2012-12-01 34 views

回答

6

既然你想做一個cron,你可能想使用mysqldump命令。

mysqldump -u database_user -pdatabase-password database_name | gzip -9 > /path/to/backup/directory/database-data/$(date +%Y-%m-%d-%H.%M.%S).sql.gz 

你的cron將會是這樣的:

30 2 * * * mysqldump -u database_user -pdatabase-password database_name | gzip -9 /path/to/backup/directory/database-data/$(date +%Y-%m-%d-%H.%M.%S).sql.gz 

在一些系統,如RHEL你可能需要從日期表達逃脫字符。 https://unix.stackexchange.com/questions/8584/using-the-system-date-time-in-a-cron-script

在每個%之前加一個\。 (\%Y - \%m - \%d - \%H。\%M。\%S)

+0

gzip -9代表什麼? –

+0

我是否必須在服務器上創建mysqldump或其已存在 –

+0

mysqldump是來自mysql本身的命令。 gzip -9是壓縮方法。 -9參數是您的壓縮級別。在這裏檢查。 http://lowfatlinux.com/linux-gzip-gunzip.html你可能想要使用-6.it取決於你想要一個更小的文件和更慢的備份,反之亦然。 – brpaz