使用shellcript使用crontab备份数据库失败?

时间:2014-10-31 13:49:40

标签: database shell backup crontab database-backups

我的备份数据库的shellcript工作正常。 但是,当我尝试通过crontab运行时,没有备份。

这是mycrontab

* * * * * /home/mohan/sohan/backuptest.sh

backuptest.sh的内容是

#!/bin/bash
name=`date +%Y%m%d`.sql
#echo $name
mysqldump -u abc --password=abc my_db > $name

backup.sh在正常运行时工作正常。但是在通过crontab

运行时无法生成备份

1 个答案:

答案 0 :(得分:0)

有两种可能性......首先,从cron运行时无法找到您的程序/命令,其次是从cron运行时无法找到您的数据库。

所以,首先是程序。您正在使用datemysqldump,因此在您的终端提示您需要找到它们的位置,如下所示:

which date
which mysqldump

然后,您可以将上面输出的完整路径放入脚本中,或者在包含两个路径的第二行添加PATH=语句。

其次,您的数据库。它在哪里?例如,如果它在/home/mohan/sohan/中,则需要像这样更改脚本:

#!/bin/bash
name=`/bin/date +%Y%m%d`.sql
cd /home/mohan/sohan
/usr/local/bin/mysqldump -u abc --password=abc my_db > $name