LINUX.ORG.RU
ФорумAdmin

Mysql backup+cron Centos 7

 , ,


0

1

Добрый день коллеги. Администрирую linux сервер очень недавно и я новичек. Встала задача делать ежедневные бекапы mysql баз. Запустил команду: mysqldump -h localhost -u *username* - *password* --routines --event *base_name* > /etc/backup/base_name.bak Команда отрабатывает - бекап делается, проверял - все открывается, все работает. запускаю crontab -e . Пишу там 38 17 * * * /usr/bin/mysqldump -h localhost -u *username* -p *password* --routines --events base_name > /etc/backup/base_name.bak

В папке создается файл base_name.bak и весом 0 КБ.

Запись в var/log/cron
Aug  3 17:37:52 centos crond[9997]: (CRON) INFO (RANDOM_DELAY will be scaled with factor 12% if used.)
Aug  3 17:37:52 centos-server crond[9997]: (root) BAD FILE MODE (/etc/crontab)
Aug  3 17:37:53 centos-server crond[9997]: (CRON) INFO (running with inotify support)
Aug  3 17:37:53 centos-server crond[9997]: (CRON) INFO (@reboot jobs will be run at computer's startup.)
Aug  3 17:38:01 centos-server CROND[10128]: (root) CMD (/usr/bin/mysqldump -h localhost -u *username* -p *password* --routines --events  base_name > /etc/backup/base_name.bak )
Aug  3 17:40:01 centos-server CROND[11823]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Aug  3 17:50:01 centos-server CROND[20288]: (root) CMD (/usr/lib64/sa/sa1 1 1)



Последнее исправление: cetjs2 (всего исправлений: 2)

Ответ на: комментарий от JerikoQ

38 17 * * * root /usr/bin/mysqldump -h localhost -u *username* -p *password* --routines --events base_name > /etc/backup/base_name.bak

Вот, из crontab-a:

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed

dada ★★★★★
()
Ответ на: комментарий от JerikoQ

на фаил /etc/crontab какие права стоят?

anonymous
()
Ответ на: комментарий от dada

Не в тему ТС НО: crontab -e редактирует файл пользователя от которого запущен, например /var/spool/cron/USERNAME (не факт что во всех дистрах именно здесь) и в нем не указывается имя пользователя, не путайте с /etc/crontab.

anc ★★★★★
()
Ответ на: комментарий от JerikoQ

Пальцем в небо, запишите всю команду в скрипт и в крон приписать именно этот скрипт.

anc ★★★★★
()
Ответ на: комментарий от ving2

создал скрипт script.sh Что внутри скрипта - #!/bin/bash

/usr/bin/mysqldump -h *ip* -u username -pPassword --routines --events basename > /etc/backup/basetest1.bak скрипт запускаю ./script.sh - отрабатывает. Бекап базы сразу делается в полном объеме. chmod 0644 делал. открывает crontab -e 20 13 * * * root /etc/backup/script.sh

Сохраняю. Делаю systemctl restart crond.service Теперь даже файл не создается.

JerikoQ
() автор топика

-p*password* - без пробела

MaZy ★★★★★
()
Ответ на: комментарий от Deleted

В пароле % нет. захожу под рутом -pPassword - без пробела изначально было куда еще копать? что смотреть. Соовсем не понимаю что делать

JerikoQ
() автор топика
Ответ на: комментарий от Deleted

[root@centos]# getenforce Permissive [root@centos]# ls -lZ /etc/crontab -rw-r--r--. root root system_u:object_r:system_cron_spool_t:s0 /etc/crontab [root@centos]# crontab -l 32 11 * * * root /usr/bin/mysqldump -u username -pPassword -h localhost --routines --events basename > /etc/backup/test1.bak Создался файл 0 кб весом. Какие еще предположения?)

JerikoQ
() автор топика
Ответ на: комментарий от Deleted

Странно.Вроде все строки разделил.
[root@centos]# getenforce
Permissive
[root@centos]# ls -lZ /etc/crontab
-rw-r--r--. root root system_u:object_r:system_cron_spool_t:s0 /etc/crontab
[root@centos]# crontab -l
32 11 * * * root /usr/bin/mysqldump -u username -pPassword -h localhost --routines --events basename > /etc/backup/test1.bak
Создался файл 0 кб весом.

JerikoQ
() автор топика
Ответ на: комментарий от Deleted

Я не знаю что случилось. Но все заработало. Спасибо большое. еще бы понять в чем причина была. Убрал roota ( изначально его и не было, но потом сказали поставить и ничего не работало)

JerikoQ
() автор топика
Ответ на: комментарий от JerikoQ

Ну, в ОП посте у тебя в каждой команде ошибка/опечатка.

потом сказали поставить и ничего не работало

Там ниже ответили, что пользователя надо указывать, если в /etc/crontab добавляешь.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.