06.02.2012 15:33, Alexander Panyushkin пишет:
On 06.02.2012 13:07, skeletor wrote:
Есть сервер в продакшине и с него нужно сделать дамп баз. Базы большие
(50 Гб каждая). Проблема в том, что при дампе идёт сильная нагрузка на
диски и в итоге - основной сайт лежит.
Какие средства пробовались:
- обычный дамп через mysqldump на другие диски
- дамп через mysqldump по сети сразу на другой хост
Но даже и в этом случае диски нагружаются достаточно, что бы сайт не
отвечал.
ПС. Сам сайт и БД лежат на разных серверах и фраза "сайт лежит"
означает, что истекает таймаут при подключении к БД.
Может есть варианты ещё как-то сделать дамп или выставить поменьше
нагрузку на диски. nice/renice - не помогают, так как сервак не
настолько нагружен, что бы приоритет влиял на это.
Заранее спасибо.
Если база на ZFS, делаем snapshot, потом делаем видимым snapdir,
заходим в него и копируем всю папку базы целеком куда нужно.
Но не факт, что будет меньше наргузка на винты.
Проблема нагрузки на винты - в данном случае это фигня по сравнению с
проблемой целостности базы: вы сильно рискуете получить неконсистентное
нечто, ибо в zfs snapshot не попадут накопленные в буферах mysqld
изменения данных. Надо до снапшота надо флашить таблицы, как-то так:
FLUSH TABLES WITH READ LOCK
zfs shapshot
UNLOCK TABLES
--
Best regards,
Andrey Kopeyko <k...@zvuki.ru>