Мой импорт SQL через консоль MySQL является довольно медленным, и, поскольку наш файл SQL увеличивается каждый день, я хотел бы знать, существуют ли какие-либо альтернативы о том, как импортировать файл SQL быстрее.
Изменение на Oracle или другие системы не является опцией, конфигурация должна остаться такой же.
В настоящее время файл SQL: 1,5 ГБ. Я нахожусь на WAMP с Apache 2.2.14, PHP 5.2.11 и MySQL 5.1.41.
Возможно, проблема здесь, импорт сделан простым:
mysql -u username -p dbname < sqlfilename.sql
Какие-либо предложения?
Включение индексов во время импорта замедлит ваш сервер до сканирования. ALTER TABLE
tablename DISABLE KEYS
; и использование .. ENABLE KEYS
до и после импорта улучшит скорость импорта, но потребуется некоторое время для воссоздания индексов, так что в конце концов это может не привести к значительному увеличению скорости.
Кроме того, возможно, использование таблиц myisam (в отличие от innodb с опциями ссылочной целостности) обычно дает лучшую производительность, поскольку не требует дополнительных затрат на ссылочную целостность.
Лично я не использую оператор импорта из консоли mysql, а импортирую файлы sql, используя mysql -uUSER -pPASS DBNAME
Надеюсь, это поможет.
Я не уверен, что это решит вашу проблему, потому что я не уверен, где находится узкое место ... Тем не менее, я был очень впечатлен бесплатным инструментом Toad for MySQL в качестве замены консоли управления MySQL. У него отличные инструменты для импорта, и, как правило, он намного лучше IMO, чем стандартная консоль управления MySQL.