Как мне сделать более быстрый импорт MySQL? - PullRequest
3 голосов
/ 30 сентября 2010

Нам нужно вывести существующие производственные данные и затем импортировать их в БД разработки для заключительных этапов тестирования.

В псевдокомандах в настоящее время мы:

mysqldump ....
mysql -u __USER__ __DB__ < ./dbdump.sql
mysql "sanitize script"

Проблема заключается в том, чточто средняя команда выполняет импорт и занимает более часа, чтобы импортировать 600 МБ данных.Может быть, это из-за всех имеющихся у нас индексов, но меня удивляет, что это единственный реальный метод импорта.

Есть ли способ получить данные прямого хранения, а не дамп SQL, а затем просто заменитьмои локальные данные SQl?Кажется сумасшедшим, чтобы сбросить все данные в команды SQL и затем выполнить их.

1 Ответ

2 голосов
/ 01 октября 2010

если вы используете myisam, вы можете просто скопировать файлы базы данных.Иногда вам может потребоваться выполнить «таблицу восстановления».

Другой вариант может заключаться в использовании «load_data_infile».Согласно документации mysql это в 20 раз быстрее, чем операторы вставки.см http://dev.mysql.com/doc/refman/5.0/en/insert-speed.html

...