Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да предотвратите изчакване на връзката за голям импорт на MySQL

Стратегии за импортиране на големи 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

Използване на разпределен MySQL дъмп импортер на Big Dump

Ако основното импортиране на PHPMyAdmin не работи, може да искате да опитате скрипта Big Dump от Ozerov.de за поетапно импортиране на MySQL. Това, което прави този полезен скрипт, е да стартира вашия импорт в по-малки блокове, което е точно това, което често е необходимо за успешно импортиране на голям дъмп на MySQL. Това е безплатно изтегляне на адрес http://www.ozerov.de/bigdump/ .

Процесът на използване на Big Dump е доста прост:вие основно позиционирате вашия SQL файл за импортиране и скрипта Big Dump заедно на сървъра, задавате няколко конфигурации в скрипта Big Dump и след това стартирате скрипта. Big Dump се справя с останалото!

Един ключов момент за тази иначе страхотна опция е, че тя изобщо няма да работи при експортиране на MySQL, което съдържа разширени вмъквания. Така че, ако имате възможност да предотвратите разширени вмъквания, опитайте. В противен случай ще трябва да използвате друг метод за импортиране на вашия голям MySQL файл.

Отидете на командния ред с MySQL конзолата

Ако използвате WAMP (и дори да не сте), винаги има опция да намалите и импортирате голямата си MySQL база данни с помощта на MySQL конзолата. Импортирам 4GB база данни по този начин, докато пиша тази публикация. Което всъщност е причината да прекарам известно време за писане, защото дори този метод отнема време, когато имате 4GB SQL файл за импортиране!

Някои разработчици (обикновено аз) се плашат от отварянето на черен екран и въвеждането на загадъчни команди в него. Но това може да бъде освобождаващо, а когато става въпрос за MySQL бази данни, това често е най-добрият път. В WAMP имаме достъп до MySQL конзолата от контролния панел на WAMP в MySQL> MySQL Console. Сега нека научим 2-те прости команди на MySQL Console, от които се нуждаете, за да импортирате 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 .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql_real_escape_string() и mysql_escape_string() достатъчни ли са за сигурността на приложението?

  2. Първичният ключ автоматично ли се индексира в MySQL?

  3. Как да отстраните проблеми с MySQL дефинера

  4. Как да съхранявам unicode в MySQL?

  5. Как да защитите MySQL/MariaDB сървъри