Как импортировать большие наборы данных в MySQL - правильный путь? - PullRequest
4 голосов
/ 27 августа 2011

У меня есть файл размером 400 МБ * .sql, который является дампом из базы данных MySQL.Теперь я хочу импортировать это в новую базу данных.Я использовал phpmyadmin, но он ломается через несколько минут, потому что он не может обработать такой большой набор данных (достигнут максимальный размер файла).Поэтому я использовал следующее:

вошел в систему через SSH.выбрал базу данных с помощью инструмента MySQL.команда: source mybackup.sql

Теперь запросы выполняются, но теперь они выполняются более 3 часов.Что не так или это действительно так долго?

Спасибо, WorldSignia

Ответы [ 2 ]

3 голосов
/ 27 августа 2011
mysql databaseName < mybackup.sql

Думаю, это так быстро, как только возможно.

1 голос
/ 27 августа 2011

Если это еще не сделано, вы можете использовать set autocommit=0 для отключения автоматической фиксации перед импортом. В противном случае InnoDB будет COMMIT после каждого оператора INSERT. Это может помочь некоторым.

Вы также можете отключить вторичные уникальные ключи и внешние ключи, чтобы помочь. Смотрите эту ссылку для большего количества идей:

http://dev.mysql.com/doc/refman/5.5/en/optimizing-innodb-bulk-data-loading.html

...