Дело было под Windows 7
Нежданно-негаданно возникла задача импортировать себе базу MySQL довольно приличного размера.
На первый взгляд крайне простая штука: берешь SypexDumper и льешь.
Но на базе размером в 400 мегабайт дампер лег и перестал подавать признаки жизни.
Было принято судьбоносное решение импортить дамп через родную Windows-консоль MySQL.
Поскольку дело было на локальной машине, все настройки были в моей власти.
Долго куря мануалы, понял, что дело вовсе не во времени ожидания (я вообще из консоли MySQL выполнял импорт).
На каком-то ненашенском форуме нашел светлую мысль о том, что запрос в 12 тысяч строк мой сервер переварить не в состоянии.
Был найден параметр max_allowed_packet, который установлен в значение 1M
Нехитрые манипуляции и у нас есть max_allowed_packet = 700M
Еще одна засада притаилась в неожиданном месте
По идее конфиг MySQL лежит в /путь-к-MySQL/my.ini
Но в XAMPP этот путь выглядит как /путь-к-MySQL/bin/my.ini //еще пара миллионов нервных клеток коту под хвост
Поскольку исходный дамп был в 1251, а юзать его в дальнейшем нужно было в UTF8, открыл файл в Notepad++
Сделал Кодировки >> Преобразовать в UTF8 (Без BOM)
Запускаю консоль MySQL
mysql> use mydbname
mysql> source J:\dump.sql
И на выходе сплошь и рядом закорючки
Чтобы не углубляться в подробности, пишу список того, что делал
/путь-к-MySQL/bin/my.ini
секция [client]
default-character-set=utf8
секция [mysqld]
character-set-server = utf8
collation-server = utf8_general_ci
И в самом дампе первой строкой написал
SET NAMES utf8;
Не забываем про точку с запятой в конце строки.
Вот и все. По дороге еще менял шрифты в консоли и кучу чего еще творил.
Но это некритично.
Удачи в длинных импортах!