MySQL在Cron作业中转储和gzipping

时间:2015-10-22 16:30:02

标签: mysql cron gzip

我想要的是简单地以一定的时间间隔转储我的MySQL数据库,然后在完成后将该文件夹同步到我的S3存储桶。我的脚本的每个化身都遇到了同样的问题。

如果我直接运行脚本,它可以正常工作。数据库转储并且没有问题。如果我从Cron作业运行脚本,脚本似乎以块的形式执行。它一次转储和拉链在75-100兆之间,覆盖刚刚完成的部分。因此,最终得到一个只有75Mb而不是完整文件的文件,而不是最终得到一个完整的541Mb gzip文件。

它几乎就像它在转储完成之前开始压缩。

这是我正在使用的当前脚本。没有多少。

#!/bin/bash

NOW=$(date +%Y-%m-%d--%H)

echo Dumping database at production-$NOW.sql
mysqldump --user=USERNAME --password=PASSWORD --routines DBNAME > /var/mysqlBackups/production-$NOW.sql

echo Zipping production-$NOW.sql
gzip /var/mysqlBackups/production-$NOW.sql

printf "Completed backup and gzip\n\n"

我已经尝试将我的env变量添加到脚本中但没有做任何事情,这不是可以手动运行的脚本。

任何想法或地点开始?我疯了。

0 个答案:

没有答案