代码改变世界

mysqldump脚本crontab执行失败,但是手动执行成功

2015-12-28 10:55  abce  阅读(3705)  评论(0编辑  收藏  举报

检查备份时发现,cron中定时备份mysql的脚本备份失败,但是手动自行mysql备份脚本却能正常成功

检查cron的环境变量:

# cat /etc/crontab
...
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
...

 

检查root用户的环境变量:

# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/app/mysql/bin

 

比较可以发现cron的环境变量少了/app/mysql/bin

 

解决方法:

  在脚本中,对mysqldump命令使用绝对路径。