2014-05-05 206 views
0

當我使用下面的命令cron作業命令執行

mysqldump -hHOST -uUSERNAME -pPASSWORD DATABASE > file.sql 

想單獨的作業每次創建時執行cron的工作,而不是覆蓋現有文件沒有覆蓋exising文件。

回答

1

我使用shell scrip在我的服務器上解決這個問題。這是代碼,如果你想嘗試。創建文件.sh,例如:backupdb.sh

#!/bin/bash 
NOW=$(date +"%m%d%Y") 
FILE="backupdb.$NOW.tgz" 
SQL="backupdb.$NOW.sql" 
DBNAME='live'    #name of database 
DUMP='/usr/bin/mysqldump' 
USER='root'    #user 
HOST=10.0.0.8    #Ip database 

$DUMP -h $HOST -u $USER -pYOURPASSWORD --routines --events $DBNAME > /home/backupdb/$SQL 

gzip -9 /home/backupdb/$SQL 
echo "BACKUP DATABASES FROM MYSQL MASTER SUCCESS $SQL"|mail -s "BACKUP DATABASES" [email protected]   #you can chang this email with your personal email 

並保存。

不要忘記更改權限,

chmod +x backupdb.sh 

在cron作業添加該代碼

00 04 * * * sh /home/backupdb/backupdb.sh 

保存

就是這樣。

對不起,如果我的英文不好