Простой вопрос об использовании mysqldump

У меня есть веб-сайт ЛАМПЫ с mysql бэкендом с механизмом InnoDb для таблиц

Я хотел бы смочь использовать mysqldump для взятия периодических дампов базы данных - не имея необходимость останавливать mysql сервер (т.е. закрывая веб-сайт) на время резервного копирования.

Я удивлен, что не могу найти эту информацию нигде - даже в документации MySQL. Большое упоминание сделано о mysqlhotcopy, но который только работает на таблицы IMSAM - и не представляет поэтому интерес для меня.

Кто-либо знает если (как?) Я могу использовать mysqldump для взятия копии/дампа базы данных, которая все еще используется?.

Ссылка на официальную документацию была бы очень полезна, так как я хочу удостовериться, что я получаю это абсолютно правильное.

Я работаю на Ubuntu 10.0.4 LTS

0
задан 02.08.2010, 10:44

4 ответа

Обычный способ сделать это должно установить ведомый экземпляр MySQL и взять резервное копирование оттуда. Вам не обязательно нужен отдельный физический сервер для ведомого MySQL, нормально совершенно выполнять его на том же сервере (если у Вас есть дисковое пространство и некоторая память для него; со стороны ЦП вещей главным образом неактивное ведомое устройство MySQL не причинило бы много вреда).

Править:: Добавленный официальные ссылки на документ репликации MySQL.

Долгое объяснение о репликации MySQL: http://dev.mysql.com/doc/refman/5.1/en/replication.html

Практическое руководство установки репликации: http://dev.mysql.com/doc/refman/5.1/en/replication-howto.html

1
ответ дан 24.11.2019, 06:51

Я соглашаюсь с Janne, использование репликации является обычным способом сделать вещи. Но Вы могли просто использовать MySqlDump. Вы не должны выключать DB для этого. Это просто будет немного безразлично некоторое время. Зависит, какое приложение и сколько данных Вы имеете.

http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html

1
ответ дан 24.11.2019, 06:51

Я использую измененную версию сценария, найденного здесь:

http://bash.cyberciti.biz/backup/backup-mysql-database-server-2/

(Я просто удалил некоторые строки, которые создают и устанавливают полномочия на резервных каталогах),

Это работает вполне прилично на меня на живом веб-сервере человечности

0
ответ дан 24.11.2019, 06:51

Вы не должны завершать работу, база данных для использования MySQL Dump This является сценарием, который я использую в Windows

@echo Dumping data...

"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump.exe" --add-drop-table=true -h localhost -u root -ppassword mydatabase table1 table2 table3 1> %1

Если Вы хотите выполнить это непосредственно, просто используйте

mysqldump.exe" --add-drop-table=true -h localhost -u root -p mydatabase table1 table2 table3 > datadump.sql

И собирается попросить пароль. В этом примере я просто создаю резервную копию некоторых таблиц (1 - 3), но можно скопировать все. Существует много различных вариантов. Для восстановления пакетный файл:

@echo Loading Data...
@"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysql.exe" -u root -ppasword  -h localhost mydatabase 0< %1

Или просто

mysql.exe" -u root -p -h localhost mydatabase < datadump.sql
0
ответ дан 24.11.2019, 06:51

Теги

Похожие вопросы