2013-03-23 52 views
0

我想在我的cron中運行任務以將所有數據庫導出到單個文件中。我想爲每週的每一天創建1個文件(例如all_[1-7].sql)。如果它存在,我希望它替換以前的文件。是否有可能使用MySQL的日期和時間函數,例如:使用mysqldump將所有數據庫導出到文件中使用DAYOFMONTH()

mysqldump -u user -ppass –all-databases | gzip > /backups/mysql/all_`DAYOFMONTH(CURDATE())`.sql.gz 

回答

0

不是。管道字符運行shell命令後會發生什麼,而不是MySQL。因此你需要生成日期「shell方式」。例如。

... | gzip > /backups/mysql/all_`date +%u`.sql.gz 
+0

完美,謝謝。它會覆蓋現有的副本嗎? – xylar 2013-03-23 20:59:30

+0

常見的行爲是覆蓋,但在某些情況下(例如zsh),您需要採取額外的步驟來啓用覆蓋。 – 2013-03-23 21:02:04

相關問題