Бэкап MySQL базы при активно работающем сайте. Как сделать?

12
A
На сайте с 22.02.2010
Offline
2
1325

Сейчас думаем над скриптом бэкапа БД и файлов сайта.

При выполнении команды mysqldump велика вероятность посылки скриптом от пользователя какого нибудь запроса на добавление/изменение информации в БД. Дамп может получится битый.

посоветуйте решение, чтобы этого избежать. Может существует команда блокировки БД на момент бэкапа?

Закрывать сайты вручную жутко муторнное занятие и не разумное.

K
На сайте с 24.12.2009
Offline
4
#1
N
На сайте с 06.05.2007
Offline
419
#2

Многие знания - многая печаль :)

mysqldump лочит таблицы при дампе по-умолчанию.

Кнопка вызова админа ()
BD
На сайте с 22.03.2010
Offline
5
#3

Для бекапа использую Sypex Dumper. С почти гиговым дампом форума отлично работает.

P
На сайте с 08.03.2007
Offline
250
#4

Если база большая, mysqlhotcopy будет работать быстрее mysqldump, хотя и переносимости между версиями mysql не будет (а оно и не сильно нужно для серьёзного применения).

V
На сайте с 01.10.2006
Offline
136
#5
Bobrov Dmitry:
Для бекапа использую Sypex Dumper. С почти гиговым дампом форума отлично работает.

Я не против стороннего софта, но объясните, чем он лучше штатного mysqldump и скриптов на bash? 🚬

Сайт такой привлекательный и красочный, но как я понял, он для тех кто через phpMyAdmin бекапы делает и не умеет пользоваться штатными средствами, ну или для тех у кого настолько шаред хостинг и злые админы, что не дают доступ по ssh :)

ЗЫ: действительно, запамятовал про mysqlhotcopy, хотя особо не юзаю его

Слава Шевцов
На сайте с 23.07.2005
Offline
370
#6

Всё, кроме пункта 1, в автоматическом режиме, дамп по расписанию:

1. Создаём реплику.

2. Данные постоянно реплицируются.

3. Реплику блокируем на изменение.

4. С реплики делаем дамп.

5. Разблокируем реплику.

6. Накатываются изменения произошедшие с момента блокирования.

7. Продолжается репликация изменений в режиме реального времени.

8. Замыкаем цикл на пункт 3.

Неизменность точки зрения неизменно порождает иллюзию понимания.
A
На сайте с 22.02.2010
Offline
2
#7
netwind:
Многие знания - многая печаль :)
mysqldump лочит таблицы при дампе по-умолчанию.

тогда зачем нужно --mysql-lock-tables ?

N
На сайте с 06.05.2007
Offline
419
#8

anzelor, почему бы и нет. случаи бывают разные. Все есть в мане :

по умолчанию включена опция --opt, которая включает "оптимальный бекап" c использованием --lock-tables. Ее можно отключить --skip-opt) и в этом случае может понадобиться включить отдельно блокировку таблиц --lock-tables.

Asin
На сайте с 26.12.2008
Offline
57
#9

На заметку:

http://www.mysqlautobackup.com/

P
На сайте с 08.03.2007
Offline
250
#10
Asin:
На заметку:
http://www.mysqlautobackup.com/

инкрементальный бэкап есть? Нету, похоже.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий