【问题标题】:MySql backup with date in flename using php使用php在文件名中使用日期的MySql备份
【发布时间】:2017-02-16 16:49:10
【问题描述】:

我的提供商告诉我使用此脚本创建 Mysql 备份:

<?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”之类的文件

怎么做? 谢谢

【问题讨论】:

    标签: php mysql date database-backups


    【解决方案1】:

    所以像这样创建它

    $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
    ));
    

    【讨论】:

      【解决方案2】:

      这应该可以...它只是将日期附加到文件名。

      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")
      ));
      

      【讨论】:

        【解决方案3】:

        使用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
        ));
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-11-27
          • 2011-05-25
          • 1970-01-01
          • 2010-11-22
          • 1970-01-01
          相关资源
          最近更新 更多