crontab 定时执行 mysqldump 备份脚本无效

最近博客定时自动备份数据库等文件到 Dropbox,使用 mysqldump 备份数据库脚本手工执行成功,但 crontab 定时上传到 Dropbox 上的文件只有 1.73kb,显然 crontab 定时任务执行过程中遇到了问题。

原来是 corn 的环境变量中没有 mysqldump,所以用 crontab 执行 mysqldump 的时候要加上绝对路径。用 whereis mysqldump 得到绝对路径:


/usr/local/mysql/bin/mysqldump

.sh 备份脚本中的 mysqldump 命令修改为上面的路径就行了。

/usr/local/mysql/bin/mysqldump -u $MYSQL_USER -h $MYSQL_SERVER -p$MYSQL_PASS --all-databases > "$NOW-Databases.sql"

标签: mysqldump