【问题标题】:Mysqldump not working with cron job using dynamic filename in FreeBSDMysqldump 无法在 FreeBSD 中使用动态文件名处理 cron 作业
【发布时间】:2019-04-04 05:00:02
【问题描述】:

我想使用 cron 作业自动备份我的数据库,并且我想使用指示备份日期的动态文件名。

* * * * * mysqldump -udbuser -pdbpassword mydb > /backups/mydb.`date +"%Y-%m-%d"`.sql

但它似乎不起作用。我检查了它显示的 cron 日志。

Oct 31 11:18:00 dbuser /usr/sbin/cron[94330]: (dbuser) CMD (mysqldump -udbuser -pdbpassword mydb > /backups/mydb.`date +")

该命令似乎没有完全执行。我该如何解决?

【问题讨论】:

    标签: mysql cron


    【解决方案1】:

    很抱歉没有为您的问题提供摘要答案,但您可以试试这个:

    - 将此命令粘贴到 bash 文件(例如:/tmp/backup.sh):

     #!/bin/bash
     export TIME=$(date +'%Y%m%d')
     export DATABASEHOST=192.168.100.10
     export SCHEMA="db01 db02"
     export DBPORT="3306"
     export DBPS=$(echo 'password')
     export BACKUPDIR=$(echo '/backup')
     ERR=0
     backup()
     {
     for i in $SCHEMA;
     do
         echo $TIME >> /tmp/db_tar_backup_err.log
         cd $BACKUPDIR
         mysqldump -ubackup -p$DBPS -h $DATABASEHOST -P $DBPORT --single-transaction --routines --triggers $i > db_${i}_$TIME.sql
         tar -czPf db_${i}_$TIME.tar.gz db_${i}_$TIME.sql 2>> /tmp/db_tar_backup_err.log || ERR=1
         find db_${i}_$TIME.sql -delete
     done
     }
    
     backup()
    

    - 创建 crontab 条目:

     0 20 * * * /bin/sh /tmp/backup.sh
    

    说明: 您的脚本将按照 SCHEMA 变量的顺序备份数据库 db01、db02,并在 20:00 使用 tar 对其进行压缩

    【讨论】:

      【解决方案2】:

      Cronjobs 不理解这些变量。 下面是一个为我工作多年的 php 脚本备份。备份为sql直接压缩。

      $dbFile = '/data/Backup/backup-'.date('Ymd').'.sql.gz';
      $dbHost = 'localhost'; // Database Host
      $dbUser = 'username'; // Database Username
      $dbPass = 'password'; // Database Password
      exec( 'mysqldump --host="'.$dbHost.'" --user="'.$dbUser.'" --password="'.$dbPass.'" --add-drop-table "databasename" | gzip > "'.$dbFile.'"' );
      

      下面是cronjob

      * * * * * /usr/bin/php /path_to_backup_script/backup.php
      

      【讨论】:

        猜你喜欢
        • 2010-11-12
        • 1970-01-01
        • 2014-11-04
        • 2015-12-13
        • 1970-01-01
        • 2011-02-26
        • 2013-03-29
        • 2021-06-18
        • 1970-01-01
        相关资源
        最近更新 更多