После того, как я прочитал много постов и выполнил множество исследований и разработок в процессе импорта, я не нашел такого решения, которое могло бы быстро импортировать большую базу данных (около 15 ГБ +).
Что я пробовал:
1) Использовать сжатую базу данных для импорта, используя следующую команду
gunzip < large-db.sql.gz | mysql -u root -p mydb
2) Импорт с использованием исходной команды, т.е.
mysql -u root -p
use mydb;
set global net_buffer_length=1000000; --Set network buffer length to a large byte number
set global max_allowed_packet=1000000000; --Set maximum allowed packet size to a large byte number
SET FOREIGN_KEY_CHECKS = 0; --Disable foreign key checking to avoid delays,errors and unwanted behaviour
SET UNIQUE_CHECKS = 0;
SET AUTOCOMMIT = 0;
source large-db.sql --Import your sql dump file
SET UNIQUE_CHECKS = 1;
SET FOREIGN_KEY_CHECKS = 1;
COMMIT;
Я нашел второй вариант медленнее, чем первый.
Что-то не так, что я делаю, потому что я прочитал во многих постах, что второй вариант хорошо работает для других и быстро импортирует большую базу данных.
Для меня импорт занимает около 7-8 часов, поскольку имеется 1800 таблиц с данными.