URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 85762
[ Назад ]

Исходное сообщение
"Грамотное создание копии БД"

Отправлено stasbz , 27-Июн-09 20:59 
Подскажите, необходимо периодически делать копию БД, для восстановления в случае проблем.
Использую комманду
mysqldump --databases --add-drop-table -ulogin -ppassword database > database_22-3-06-09.sql
Правильно ли я задаю команду или надо добавить ее какой-либо параметр? восстанавливать будут командой mysql из командой строки.

где-то прочел, что перед созданием копии БД таким способом необходимо, чтобы не осуществлялась запись в БД. как лучше поступить в данном случае: может быть можно остановить апаче (чтобы не функционировал сайт) и после уже создать БД?

Как вы относитесь к созданию копии БД с помощью phpmyadmin?


Содержание

Сообщения в этом обсуждении
"Грамотное создание копии БД"
Отправлено nadirx2 , 27-Июн-09 21:02 
>[оверквотинг удален]
>mysqldump --databases --add-drop-table -ulogin -ppassword database > database_22-3-06-09.sql
>Правильно ли я задаю команду или надо добавить ее какой-либо параметр? восстанавливать
>будут командой mysql из командой строки.
>
>где-то прочел, что перед созданием копии БД таким способом необходимо, чтобы не
>осуществлялась запись в БД. как лучше поступить в данном случае: может
>быть можно остановить апаче (чтобы не функционировал сайт) и после уже
>создать БД?
>
>Как вы относитесь к созданию копии БД с помощью phpmyadmin?

Правильно! МолодеЦ! Так держать! =)

При дамп базы mysql надо блокировать запись в БД с помощю FLUSH TABLES WITH READ LOCK;


"Грамотное создание копии БД"
Отправлено nadirx2 , 27-Июн-09 21:10 
>[оверквотинг удален]
>>где-то прочел, что перед созданием копии БД таким способом необходимо, чтобы не
>>осуществлялась запись в БД. как лучше поступить в данном случае: может
>>быть можно остановить апаче (чтобы не функционировал сайт) и после уже
>>создать БД?
>>
>>Как вы относитесь к созданию копии БД с помощью phpmyadmin?
>
>Правильно! МолодеЦ! Так держать! =)
>

UNLOCK TABLES;   - не забуд потом снять блока =)))


"Грамотное создание копии БД"
Отправлено PavelR , 27-Июн-09 22:22 
>[оверквотинг удален]
>mysqldump --databases --add-drop-table -ulogin -ppassword database > database_22-3-06-09.sql
>Правильно ли я задаю команду или надо добавить ее какой-либо параметр? восстанавливать
>будут командой mysql из командой строки.
>
>где-то прочел, что перед созданием копии БД таким способом необходимо, чтобы не
>осуществлялась запись в БД. как лучше поступить в данном случае: может
>быть можно остановить апаче (чтобы не функционировал сайт) и после уже
>создать БД?
>
>Как вы относитесь к созданию копии БД с помощью phpmyadmin?

всё зависит от ваших требований к целостности данных и от частоты обновлений данных в БД.

Если это сравнительно простенький сайт с небольшим объемом - то я бы не заморачивался на блокировки ;-)

Если делать очень грамотно, и стараться минимизировать простой - то есть способ с использованием снимков LVM - тома, где располагаются файлы БД.

способ заключается в :

1. блокируем запись в БД, делаем сброс буферов на диск
2. делаем снимок LVM - тома
3. разблокируем запись в БД

4. делаем большой и длинный бэкап с использованием файлов в снимке.

есть также некоторая утилита, реализующая данную процедуру. Название не подскажу.