Автоматизация резервного копирования базы данных

Главные вкладки

Аватар пользователя starcomputer starcomputer 15 апреля 2011 в 13:17

Нашел способ это делать:
http://drupalcookbook.ru/recept/avtomatizacija-rezervnogo-kopirovanija-b...
однако будучи полным ламером в юниксах ни фига не понял Sad
0 0 * * * mysqldump -uLOGIN -PPORT -hHOST -pPASS DBNAME | gzip -c > `date "+%Y-%m-%d"`.gz
Добрые люди, дайте пример этой команды.
-uLOGIN - понятно
-PPORT - не понятно
-hHOST - не понятно (www.мой_сайт.com что-ли ?)
-pPASS - понятно
DBNAME - не совсем понятно (account_drupal1 что ли ?)

Куда будет сохраняться копия базы ? (админ доступа ко всему серверу нет, только свой аккаунт и свои базы).

Комментарии

Аватар пользователя starcomputer starcomputer 15 апреля 2011 в 13:46

Спасибо, попробую, но ..
А если сам друпал "завалится" Smile
Допустим хостер что-то там перенастроит у себя ?
Хотелось бы иметь бэкап на уровне сервера хостера Smile

Аватар пользователя Viola Viola 15 апреля 2011 в 14:28

-PPORT - если стандартный порт, то это 3306
-hHOST - обычно это localhost
DBNAME - имя вашей базы данных

бОльшую часть этих параметров вы можете почерпнуть из вашего конфигурационного файла - ищите похожую строку, только уже с вашими реальными данными:
$db_url = 'mysqli://username:password@localhost/databasename';

В этой строке есть все, кроме порта, но скорее всего стандартный вам подойдет.

Только вот бекап все равно будет лежать на сервере, и вам еще нужно придумать, как его скачивать или отправлять на мыло, и еще прийдется подумать об автоматическом удалении старых бекапов, если их собралось уже, скажем, больше 10. Вобщем, я тоже рекомендую backup and migrate - он все это умеет. Wink

Аватар пользователя starcomputer starcomputer 15 апреля 2011 в 14:54

"Viola" wrote:
Только вот бекап все равно будет лежать на сервере

А куда конкретно его сохранит эта команда ?
Есть какие-то умолчания ?

Аватар пользователя starcomputer starcomputer 15 апреля 2011 в 15:32

"Viola" wrote:
Вобщем, я тоже рекомендую backup and migrate - он все это умеет

Можно в нем настроить ВРЕМЯ запуска, чтобы не днем, а ночью.
Крон у меня срабатывает каждые полчаса. В настройках B&M поставил 3 дня.
Возможен ли отдельный запуск процесса (не через крон) ?

Аватар пользователя starcomputer starcomputer 15 апреля 2011 в 16:47

Код не хочется править - нет столько знаний.
Поставим вопрос по другому.
Настройка стоит бэкапить раз в три дня.
Что это означает ?
Допустим база забэкаплена 15.04.11-13:00:00 значит ли это, что следующий бэкап будет 18.04.11-13:00:00 или 18.04.11-00:00:00 ?
Если кто пользуется, гляньте время сохранения.

Аватар пользователя Viola Viola 15 апреля 2011 в 17:17

"starcomputer" wrote:
А куда конкретно его сохранит эта команда ?
Есть какие-то умолчания ?

Не знаю.. Попробуйте запустить один раз и поищите по имени.
"starcomputer" wrote:
Возможен ли отдельный запуск процесса (не через крон) ?

Вручную можете запустить, если нужно, например, перед обновлением модуля. А планировщик работает по крону.
"starcomputer" wrote:
Допустим база забэкаплена 15.04.11-13:00:00 значит ли это, что следующий бэкап будет 18.04.11-13:00:00 или 18.04.11-00:00:00 ?
Если кто пользуется, гляньте время сохранения.

Глянула - время абсолютно разное. Есть целая очередь задач, которые по крону обрабатываются, вряд ли резервирование бд в таком случае будет происходить в одно и то же время.

Аватар пользователя starcomputer starcomputer 15 апреля 2011 в 17:32

"Viola" wrote:
Глянула - время абсолютно разное. Есть целая очередь задач, которые по крону обрабатываются, вряд ли резервирование бд в таком случае будет происходить в одно и то же время

Та да. Посему и мысли, как бы заставить бэкап ночью работать, чтобы не мешал .....
Может есть какие-то вариации кронов, которые поддерживают такую опцию ?
.............
НаскОлько разное ?

Аватар пользователя Viola Viola 16 апреля 2011 в 16:50

"starcomputer" wrote:
НаскОлько разное ?

Абсолютно разное: 11:01, 18:00, 00:02, 21:00, 22:00, 23:00. У меня крон ежечасно срабатывает, а резервирование настроено на один раз в неделю
"starcomputer" wrote:
Может есть какие-то вариации кронов, которые поддерживают такую опцию ?

Тогда пробуйте статью, на которую ссылаетесь в начале. Попробуйте указать не просто имя базы, а полный путь. Например, создайте папку backups и в команде крона укажите /public_html/backups/имя_файла.gz - это примерно, я не знаю точно какой у вас будет полный путь.