用于MySQL-DB备份的Cronjob会生成空文件

时间:2016-09-28 14:16:47

标签: mysql cron database-backups

我有一个脚本可以创建数据库的备份。当我手动执行脚本时,备份已成功创建。 但是当我使用cronjob执行脚本时,会创建备份文件,但它完全是空的。

#!/bin/sh
#----------------------------------------------------
# a simple mysql database backup script.
# version 1 - 14.11.2014
#----------------------------------------------------
# (1) set up all the mysqldump variables
FILE=backuprelease.sql.`date +"%Y%m%d %T"`
DBSERVER=127.0.0.1
DATABASE=myschema
USER=admin
PASS=adminpassword
# (2) in case you run this more than once a day, remove the previous version of the file
unalias rm     2> /dev/null
rm ${FILE}     2> /dev/null
rm ${FILE}.gz  2> /dev/null
# (3) do the mysql database backup (dump)
# use this command for a database server on a separate host:
#mysqldump --opt --protocol=TCP --user=${USER} --password=${PASS} --host=${DBSERVER} ${DATABASE} > ${FILE}
# use this command for a database server on localhost. add other options if need be.
cd /etc/mysql/backup/backups
mysqldump --opt --user=${USER} --password=${PASS} ${DATABASE} > ${FILE}
# (4) gzip the mysql database dump file
#gzip $FILE
# (5) show the user the result
echo "${FILE}.gz was created:"
#ls -l ${FILE}.gz

我的cronjob看起来像这样:

0 */12   * * *   root   cd /etc/mysql/backup/ && sh backupReleaseShell.sh

我对目录的权限如下:

-rwxr-xr-x 1 root root      1057 Sep 28 12:17 backupReleaseShell.sh
drwxr-xr-x 2 root root      4096 Sep 28 12:58 backups

我不知道现在的问题是什么。如果有人能帮我解决这个问题,我将非常感激。

提前谢谢!

约翰

0 个答案:

没有答案