У меня очень большие базы данных с десятками тысяч таблиц, некоторые из которых содержат до 5 ГБ данных в 10 миллионах записей. (Я пользуюсь популярным сервисом) ... У меня всегда были головные боли при резервном копировании этих баз данных. Используя mysqldump по умолчанию, он быстро выводит серверную нагрузку из-под контроля и блокирует все ... затрагивающее моих пользователей. Попытка остановить процесс может привести к сбою таблиц и большому времени простоя при восстановлении этих таблиц.
Я сейчас использую ...
mysqldump -u USER -p --single-transaction --quick --lock-tables=false DATABASE | gzip > OUTPUT.gz
Ссылка mysqldump на dev.mysql.com даже говорит ...
Чтобы вывести большие таблицы, вы должны объединить транзакцию --single
опция с --quick.
Ничего не говорит о том, что, будучи зависимой от базы данных InnoDB, мои myISAM, и это прекрасно работает для меня Нагрузка на сервер почти не пострадала, и мой сервис работал как Rolex в течение всего процесса. Если у вас большие базы данных и их резервное копирование влияет на конечного пользователя ... это решение. ;)