Strategie importowania dużych baz danych MySQL
Import PHPMyAdmin
Są szanse, że jeśli to czytasz, PHPMyAdmin nie był opcją dla importu dużej bazy danych MySQL. Mimo to zawsze warto spróbować, prawda? Najczęstszą przyczyną niepowodzenia importów PHPMyAdmin jest przekroczenie limitu importu. Jeśli pracujesz lokalnie lub masz własny serwer, możesz spróbować zmienić ustawienia ini MySQL, które zwykle znajdują się w pliku my.ini znajdującym się w folderze instalacyjnym MySQL. Jeśli pracujesz z WAMP w systemie Windows, możesz uzyskać dostęp do tego pliku za pomocą panelu sterowania WAMP w MySQL> my.ini. Pamiętaj, aby ponownie uruchomić WAMP, aby Twoje nowe ustawienia zostały użyte. Ustawienia, które możesz tutaj zwiększyć, obejmują:
max_allowed_packet
read_buffer_size
Nawet przy rozszerzonych ustawieniach importu MySQL może się okazać, że czas importu wygasa z powodu ustawień PHP. Jeśli masz dostęp do PHP.ini, możesz edytować maksymalny czas wykonania i powiązane ustawienia. W WAMP uzyskaj dostęp do pliku PHP.ini w panelu sterowania WAMP w PHP> php.ini. Rozważ zwiększenie limitów następujących ustawień podczas próbowania dużych importów MySQL:
max_execution_time
max_input_time
memory_limit
Korzystanie z rozłożonego importera zrzutów MySQL Big Dump
Jeśli podstawowe importowanie PHPMyAdmin nie działa, możesz wypróbować skrypt Big Dump z Ozerov.de dla przesuniętego importu MySQL. To, co robi ten przydatny skrypt, to uruchamianie importu w mniejszych blokach, co jest dokładnie tym, czego często potrzeba, aby pomyślnie zaimportować duży zrzut MySQL. Jest to bezpłatne pobieranie dostępne pod adresem http://www.ozerov.de/bigdump/ .
Proces korzystania z Big Dump jest dość prosty:zasadniczo umieszczasz plik importu SQL i skrypt Big Dump razem na serwerze, ustawiasz kilka konfiguracji w skrypcie Big Dump, a następnie uruchamiasz skrypt. Big Dump zajmuje się resztą!
Jednym z kluczowych punktów tej wspaniałej opcji jest to, że nie będzie ona działać w ogóle na eksportach MySQL, które zawierają rozszerzone wstawki. Więc jeśli masz możliwość zapobiegania rozszerzonym wstawkom, wypróbuj ją. W przeciwnym razie będziesz musiał użyć innej metody importowania dużego pliku MySQL.
Idź do wiersza poleceń z konsolą MySQL
Jeśli używasz WAMP (a nawet jeśli nie), zawsze istnieje możliwość przejścia do chase i zaimportowania dużej bazy danych MySQL za pomocą konsoli MySQL. W ten sposób importuję bazę danych 4GB podczas pisania tego posta. Właśnie dlatego mam trochę czasu na pisanie, ponieważ nawet ta metoda wymaga czasu, gdy masz do zaimportowania plik SQL o wielkości 4 GB!
Niektórzy programiści (zazwyczaj ja) są przerażeni otwieraniem czarnego ekranu i wpisywaniem na nim tajemniczych poleceń. Ale może to być wyzwalające, a jeśli chodzi o bazy danych MySQL, często jest to najlepsza droga. W WAMP uzyskujemy dostęp do konsoli MySQL z panelu sterowania WAMP w MySQL> MySQL Console. Teraz nauczmy się 2 prostych poleceń konsoli MySQL potrzebnych do zaimportowania bazy danych MySQL w stylu wiersza poleceń:
use `db_name`
Polecenie use
a następnie nazwa bazy danych powie konsoli MySQL, której bazy danych chcesz użyć. Jeśli masz już skonfigurowaną bazę danych, do której importujesz, zacznij od wydania polecenia use
Komenda. Załóżmy, że Twoja baza danych nosi nazwę my_great_database
. W takim przypadku wydaj następujące polecenie w konsoli MySQL. Pamiętaj, że polecenia muszą kończyć się średnikiem.
mysql-> use my_great_database;
mysql-> source sql_import_file.sql
Polecenie source
a następnie lokalizacja pliku SQL spowoduje zaimportowanie pliku SQL do bazy danych określonej wcześniej za pomocą use
Komenda. Musisz podać ścieżkę, więc jeśli używasz WAMP na swoim lokalnym serwerze, zacznij od umieszczenia pliku SQL w łatwo dostępnym miejscu, takim jak C:\sql\my_import.sql. Pełna komenda z tą przykładową ścieżką to:
mysql-> source C:\sql\my_import.sql;
Po uruchomieniu tego polecenia powinien rozpocząć się import pliku SQL. Pozwól na uruchomienie zapytań i poczekaj na zakończenie importu przed zamknięciem konsoli MySQL.
Dalszą dokumentację dotyczącą wiersza poleceń MySQL można znaleźć tutaj:http:// dev.mysql.com/doc/refman/5.5/en/mysql.html .
Innym rozwiązaniem jest użycie MySQL Workbench .