Ответ 1
Стратегии импорта больших баз данных MySQL
Импорт PHPMyAdmin
Скорее всего, если вы читаете это, PHPMyAdmin не был вариантом для вашего большого импорта базы данных MySQL. Тем не менее, это всегда стоит попробовать, не так ли? Наиболее распространенной причиной сбоя импорта PHPMyAdmin является предел импорта. Если вы работаете локально или имеете свой собственный сервер, вы можете попробовать изменить настройки MySQL ini, которые обычно находятся в файле my.ini, расположенном в папке установки MySQL. Если вы работаете с WAMP в Windows, вы можете получить доступ к этому файлу с помощью панели управления WAMP в разделе MySQL > my.ini. Не забудьте перезапустить WAMP, чтобы ваши новые настройки были использованы. Настройки, которые вы можете увеличить, включают:
max_allowed_packet
read_buffer_size
Даже с расширенными настройками импорта MySQL вы все равно можете обнаружить, что импорт времени истекает из-за настроек PHP. Если у вас есть доступ к PHP.ini, вы можете внести изменения в максимальное время выполнения и соответствующие настройки. В WAMP откройте файл PHP.ini под панелью управления WAMP на PHP > php.ini. Попытайтесь увеличить лимиты при следующих настройках при попытке большого импорта MySQL:
max_execution_time
max_input_time
memory_limit
Использование Big Dump шахматного импортера дампа MySQL
Если основной импорт PHPMyAdmin не работает, вы можете попробовать Big Dump script из Ozerov.de для пошагового импорта MySQL. Для этого полезного script выполняется ваш импорт в меньших блоках, что точно так же необходимо для успешного импорта большого дампа MySQL. Это бесплатная загрузка, доступная по адресу http://www.ozerov.de/bigdump/.
Процесс использования Big Dump довольно прост: вы в основном размещаете файл импорта SQL и большой дамп script вместе на сервере, задаете несколько конфигураций в Big Dump script, а затем запустите script, Большой дамп справляется с остальными!
Один из ключевых моментов в этом отличном варианте - это то, что он не будет работать на экспорт MySQL, содержащий расширенные вставки. Поэтому, если у вас есть опция предотвращения расширенных вставок, попробуйте. В противном случае вам придется использовать другой метод для импорта большого файла MySQL.
Перейти в командную строку с консолью MySQL
Если вы используете WAMP (и даже если вы этого не делаете), всегда есть возможность отключить преследование и импортировать большую базу данных MySQL с помощью консоли MySQL. Im импортирует базу данных 4 ГБ таким образом, как я пишу этот пост. На самом деле, почему у меня есть время, чтобы потратить письмо, потому что даже этот метод требует времени, когда у вас есть 4 ГБ SQL файл для импорта!
Некоторые разработчики (обычно меня) запуганы, открывая черный экран и вводя в него загадочные команды. Но это может быть освобождение, и когда дело доходит до баз данных MySQL, это часто лучший путь. В WAMP мы получаем доступ к консоли MySQL из панели управления WAMP в MySQL > MySQL Console. Теперь давайте изучим две простые команды консоли MySQL, необходимые для импорта базы данных MySQL, стиль командной строки:
use `db_name`
Команда use
, за которой следует имя базы данных, сообщит консоли MySQL, какую базу данных вы хотите использовать. Если вы уже настроили базу данных, в которую вы импортируете, вы начинаете с выдачи команды use
. Предположим, что ваша база данных называется my_great_database
. В этом случае выполните следующую команду в консоли MySQL. Обратите внимание, что команды должны заканчиваться точкой с запятой.
mysql-> use my_great_database;
mysql-> source sql_import_file.sql
Команда source
, за которой следует местоположение файла SQL, импортирует файл SQL в базу данных, указанную ранее командой use
. Вы должны указать путь, так что, если вы используете WAMP на своем локальном сервере, начните с того, что где-то проще найти файл SQL, например C:\sql\my_import.sql. Полная команда с этим примером будет:
mysql-> source C:\sql\my_import.sql;
После запуска этой команды файл SQL должен начать импортироваться. Пусть запросы выполняются и позволяют завершить импорт до закрытия консоли MySQL.
Дополнительную документацию для командной строки MySQL можно найти здесь: http://dev.mysql.com/doc/refman/5.5/en/mysql.html.
Другим решением является использование MySQL Workbench.