2015-10-12 68 views
1

我通過cron運行以下命令:的cronjob mysql的備份問題

30 2,8,14,20 * * * DATE=`date +%Y-%m-%d_%H:%M`; mysqldump -u mysql_user -ppassword mysql_database | gzip > /home/username/backups/mysql_backup-$DATE.sql.gz 

當我做它的命令行,它的工作原理。但cronjob給我這樣一個錯誤:

/bin/bash: -c: line 0: unexpected EOF while looking for matching ``' 
/bin/bash: -c: line 1: syntax error: unexpected end of file 

我做錯了什麼?

+0

只是在這裏猜測:'日期+%Y-%m-%d_%H:%M'你不應該使用單引號而不是反引號嗎? –

+0

嗯,沒了:(我試過單引號和它給我'/斌/慶典:-c:0行:意外的EOF而尋找匹配'「」'幾乎除了與單引號相同的錯誤 – user1227914

+0

試試這個:'的mysqldump -u mysql_user -ppassword mysql_database |的gzip> /家庭/用戶名/備份/ mysql_backup- \'日期+%Y-%間 - %D_%H:%M \'.sql.gz' –

回答

0

您可能需要\逃脫%。這將是:

30 2,8,14,20 * * * /bin/bash -c 'DATE=$(date +\%Y-\%m-\%d_\%H:\%M); echo $DATE'