2017-02-16 11 views
1

моего провайдера сказал мне, чтобы использовать этот скрипт для создания резервной копии Mysql:MySql резервного копирование с датой в flename с помощью PHP

<?php 
$host= 'xxx'; 
$user= 'xxx'; 
$pass= 'xxx'; 
$db= 'xxx'; 

system(sprintf(
'mysqldump --no-tablespaces --opt -h%s -u%s -p"%s" %s | gzip > %s/dumpDB.sql.gz', 
$host, 
$user, 
$pass, 
$db, 
getenv('DOCUMENT_ROOT') 
)); 
echo '+DONE'; 
?> 

он работает называется по cronjob. Я хочу добавить дату в имя файла, поэтому я могу получить несколько файлов. Что-то, что создает файлы типа «20170216-dumpDB.sql.gz»

Как? Благодаря

ответ

2

Так создайте его, как этот

$file = date('Ymd') . '-dumpDB.sql.gz'; 
system(sprintf(
'mysqldump --no-tablespaces --opt -h%s -u%s -p"%s" %s | gzip > %s/%s', 
$host, 
$user, 
$pass, 
$db, 
getenv('DOCUMENT_ROOT'), 
$file 
)); 
+0

Это работает! Спасибо – theant

0

это должно работать ... он просто добавляет дату к имени файла.

system(sprintf(
    'mysqldump --no-tablespaces --opt -h%s -u%s -p"%s" %s | gzip > %s/%s-dumpDB.sql.gz', 
    $host, 
    $user, 
    $pass, 
    $db, 
    getenv('DOCUMENT_ROOT'), 
    date("Ymd") 
)); 
+0

Это работает! Спасибо – theant

0

Использование date('Ymd') выход: 20170216

$file = date('Ymd') . '-dumpDB.sql.gz'; //20170216-dumpDB.sql.gz 
system(sprintf(
'mysqldump --no-tablespaces --opt -h%s -u%s -p"%s" %s | gzip > %s/%s', 
$host, 
$user, 
$pass, 
$db, 
getenv('DOCUMENT_ROOT'), 
$file 
)); 

 Смежные вопросы

  • Нет связанных вопросов^_^