
我嘗試每 5 分鐘執行一次mysqldump
,cron
但似乎不起作用。我嘗試執行mysqldump
並且效果很好。
mysqldump
mysqldump -uroot -ppassword --single_transaction --opt dbname | gzip > /home/myhome/backup/dbname.`date +"%T"`.sql.gz
cron
*/5 * * * * mysqldump -uroot -ppassword --single_transaction --opt dbname | gzip > /home/myhome/backup/dbname.`date +"%T"`.sql.gz
紀錄
May 17 04:35:42 CentOS-63-64-minimal crontab[5605]: (root) LIST (root)
May 17 04:40:01 CentOS-63-64-minimal CROND[5626]: (root) CMD (mysqldump -uroot -ppassword --single_transaction --opt dbname | gzip > /home/myhome/backup/dbname.`date +")
更新
我想我發現了問題,它在 中date +"%T"
,因為如果我用它替換它date -I
現在就可以了。但是,我需要在文件名上附加日期和時間。
答案1
這應該是 cron 條目的路徑問題。
試著使用/usr/bin/mysqldump
代替mysqldump
、/usr/bin/gzip
代替gzip
only 和/usr/bin/date
代替date
。根據您的系統更改路徑。使用 commandwhereis
尋找命令的路徑。
答案2
您應該將指令放入腳本中,即 backupmysql,然後在 cron 中新增以下項目:
*/5 * * * * /path/to/backupmysql