Linux

每天晚上 10 點 Cronjob 到備份數據庫

  • April 1, 2011

我設法設置了一個cronjob:

* 13 * * * date=`date +\%d-\%m-\%Y-\%s`; mysqldump -u root -pPassword1 db121 > /home/backup/xbackup_$date.sql; gzip /home/backup/xbackup_$date.sql

我希望以上內容mysqldump每天晚上 10 點進行,然後保存到 /home/backup 目錄中。但是,這對我不起作用。

上面的條目在 crontab 中是否正確?如果是這樣,當我自己執行命令時,為什麼不進行備份,因為該命令可以正常工作。

謝謝大家的幫助

更新

我正在閱讀 cron 作業的 centos手冊,它說:

root以外的使用者可以使用 crontab 實用程序配置 cron 任務。

薩利,這不是真的嗎?

crontab(5)手冊頁:

   The "sixth" field (the rest of the line) specifies the  command  to  be
   run.   The  entire  command  portion  of the line, up to a newline or %
   character, will be executed by /bin/sh or by the shell specified in the
   SHELL  variable  of  the  cronfile.   Percent-signs (%) in the command,
   unless escaped with backslash (\), will be changed into newline charac-
   ters,  and  all  data  after the first % will be sent to the command as
   standard input.

很可能這些命令不在您$PATH的 crontab 中,在 crontab 中設置或給出命令的完整路徑,例如/usr/bin/mysqldump

引用自:https://serverfault.com/questions/254602