Mysqldump занимает слишком много времени

Процесс MySQLdump и загрузки занимает слишком много времени (~8 часов) для завершения всего процесса.

Я сбрасываю активную базу данных в файл mysqldump.tar и почти 3 ГБ. Когда я загружаю в новую базу данных, это занимает 6-8 часов, чтобы завершить процесс (загрузить в новую базу данных).

Какое решение будет рекомендовано для меня для завершения процесса?

1 ответ

Если я правильно понимаю, ваша основная проблема заключается в том, что загрузка данных в новую базу данных - это шаг, который занимает много времени. Помимо прочтения ссылки, предоставленной asdf в его комментарии ( "Как я могу оптимизировать mysqldump для большой базы данных?"), Я предлагаю вам несколько вещей:

  • Использовать --disable-keys вариант; это добавит alter table your_table DISABLE KEYS перед вставками, и alter table your_table ENABLE KEYS после того, как вставки сделаны. Когда я использовал эту опцию, время вставки примерно на 30% быстрее
  • Если возможно, используйте --delayed-insert вариант; что будет использовать INSERT DELAYED "нормальный" INSERT,
  • Если возможно, выведите данные разных таблиц в разные файлы; таким образом, вы можете загружать их одновременно.

Проверьте справочное руководство для получения дополнительной информации.

Другие вопросы по тегам