2009-06-02 9 views
7

Мне нужно знать, как я могу периодически создавать резервные копии баз данных MySQL и загружать их на локальный сервер. Я использую navicat, и у него есть простой интерфейс резервного копирования и задачи, но он поддерживает резервное копирование и сохраняет резервную копию на самом сервере. Я хотел бы иметь способ загрузить резервные копии, однажды сделанные в мою локальную систему, а не иметь их на том же сервере, что и база данных.Периодическое резервное копирование базы данных MySQL

+0

Может быть, больше подходит для serverfault? – tronda

+1

Вы также можете посмотреть: http://www.percona.com/docs/wiki/percona-xtrabackup:start – Everyz

ответ

14

Настройка хрон сервера, который работает MySQLDump команду после некоторого интервала (например, 24 часа)

mysqldump -hMY_HOST.COM -uDB_USERNAME -pDB_PASSWORD USERNAME_DATABASENAME > MysqlDump.sql 

После создания файла дампа. Установите другой cron, чтобы скопировать этот дамп на целевой сервер (желательно локальный), чтобы выполнить его с таким же интервалом выше cron.

scp [email protected]_HOST.COM:/some/path/file [email protected]_HOST2.COM:/some/path/file 

Примечание: Эта команда может вызвать высокую нагрузку на сервер (убедитесь, что вы выполняете их, когда сервер, имеющий минимальную нагрузку)

0

В дополнение к MySQLDump, есть несколько других вариантов резервного копирования. Это в основном для работы с mysqldump, вызвавшим чрезмерное/длительное время перезагрузки.

  1. InnoDB hot backup, это продукт оплаты производителями InnoDB для резервного копирования в режиме онлайн. Также сложно резервировать таблицы InnoDB, чем MyISAM, потому что с последним, если таблица покраснеть, вы можете просто скопировать файлы, но у первых есть проблемы.
    • Если ваша резервная копия может принимать мгновенные снимки вашего жесткого диска, FLUSH TABLES WITH READ LOCK очистит ваши записи на диск, чтобы ваши резервные копии находились в согласованном состоянии. Тем не менее, это заблокирует все чтения, пока вы не закончите, поэтому, если они не мгновенные, это не будет хорошо.
-1

Вы должны попробовать mydumper - https://answers.launchpad.net/mydumper/+faq/338

Он имеет режим демона, который может принимать периодические резервные копии для Вас и был разработан несколько отличных инженеров MySQL. Я считаю, что он был объявлен как mysqldump, поскольку dba представила бы это;)

+0

ссылка указывает на добавочный сайт –