Я пытаюсь сделать mysqldump
на cron
каждые 5 минут, но кажется, что он не работает. Я пытаюсь выполнить mysqldump
и он отлично работает.
mysqldump
mysqldump -uroot -ppassword --single_transaction --opt dbname | gzip > /home/myhome/backup/dbname.`date +"%T"`.sql.gz
cron
*/5 * * * * mysqldump -uroot -ppassword --single_transaction --opt dbname | gzip > /home/myhome/backup/dbname.`date +"%T"`.sql.gz
ЖУРНАЛ
May 17 04:35:42 CentOS-63-64-minimal crontab[5605]: (root) LIST (root)
May 17 04:40:01 CentOS-63-64-minimal CROND[5626]: (root) CMD (mysqldump -uroot -ppassword --single_transaction --opt dbname | gzip > /home/myhome/backup/dbname.`date +")
ОБНОВИТЬ
Я думаю, что нашел проблему, она в date +"%T"
, потому что если я заменю его на date -I
теперь это работает. Однако мне нужно добавить дату и время к имени файла.
Вы должны поместить свою команду в сценарий, например, backupmysql, а затем добавить эту запись в cron:
* / 5 * * * * / путь / к / backupmysql
Это должно быть проблемой пути для записи cron.
Попробуй использовать /usr/bin/mysqldump
вместо того mysqldump
, /usr/bin/gzip
вместо того gzip
только и /usr/bin/date
вместо того date
. Измените путь в соответствии с вашей системой. Используйте команду whereis
чтобы найти пути для команд.