Import wielkich baz danych MySQL

Import wielkich baz danych MySQL

12 września 2021 0 przez gielo

Z artykułu dowiesz się jak importować większe bazy danych MySQL, z którymi nie poradzi sobie np. PHPmyAdmin twojego hostingodawcy. Posiadając popularnego bloga, sklep internetowy, czy jakąkolwiek inną witrynę internetową, wcześniej czy później staniesz przed problemem przeniesienia jej z jakiegoś popularnego hostingu, na inny, bardziej wydajny serwer, czy to również hostingowy, czy to vps, czy dedykowany.

O ile z przeniesieniem plików witryny najpewniej nie będziesz miał większych problemów, to już z bazą danych nie koniecznie. Wielu usługodawców kont hostingowych stosuje w nich różnego rodzaju limity i ograniczenia, z racji tego, że zasoby takich serwerów są współdzielone. Pokrótce chodzi o to, aby użytkownik jednego konta hostingowego, nie zajął wszystkich zasobów serwera, czy to w wyniku źle napisanych skryptów, czy własnej ignorancji, innym użytkownikom, stwarzając problemy w prawidłowym funkcjonowaniu ich stron.

Nie chodzi tu o ilość oferowanego miejsca na serwerze tzw. quota, czy też o limit ilości plików, który czasem także jest podawany w specyfikacji konta hostingowego, a bardziej o limity zużycia procesora, czasu wykonania się skryptów i kilku innych parametrów, które dość skutecznie mogą utrudnić nam, czy wręcz uniemożliwić takie przenosiny, a których limity nie są podawane praktycznie nigdy.

Na początku należałoby określić co to są „wielkie bazy danych”. Słowo to podane jest tu dość mocno na wyrost i nijak ma się do wielkości terabajtowych baz danych wielkich korporacji i firm telekomunikacyjnych, nawet gigabajtowych baz portali informacyjnych i większych sklepów.

Z mojego doświadczenia i pewnej znajomości rynku wynika, że praktycznie żadne bazy powyżej 100mb, nie będą mogły zostać zaimportowane za pomocą takich narzędzi jak PHPmyAdmin, na praktycznie wszystkich kontach hostingowych. Przyjmijmy więc, że to właśnie granica tych 100mb może być uznana może nie za wielką bazę, ale większą bazę danych. Przynajmniej w przypadku baz witryn internetowych, a takich właśnie ten artykuł dotyczy.

Jak więc poradzić sobie z takim problemem?

Szukając nowego, bardziej wydajnego serwera hostingowego pod swoją witrynę internetową, czy też sklep, forum itp. zwróć przede wszystkim uwagę na to, abyś miał dostęp do tzw. Shella. Jest kilku usługodawców, nawet w Polsce, którzy oferują takie serwery. W przypadku serwerów VPS nie powinieneś mieć z tym problemów, ale i tutaj zwróć na to uwagę, gdyż zdarzało się, że przeglądając oferty rożnych usługodawców wcale nie było to takie oczywiste.

Import bazy danych na serwer

Zakładam, że masz już wyeksportowaną bazę danych swojej strony, ze swojego wcześniejszego serwera i posiada ona rozszerzenie nazwabazy.sql. Wrzuć ten plik do siebie na serwer (czy to hostingowy, vps czy dedykowany) np. za pomocą FTP, zaloguj się następnie po ssh (za pośrednictwem wspomnianego wyżej shella) na swoje konto i przejdź do katalogu ze swoją bazą danych (jeśli plik wrzucałeś na serwer za pośrednictwem ftp, to prawdopodobnie znajduje się on w katalogu z twoją stroną internetową). Do zmiany katalogu służy polecenie cd ./nazwakataloguzbazą. Po bliższe informacje jak używać tego polecenia odsyłam do internetu.

Jeśli już udało ci się przejść do odpowiedniego katalogu z plikiem .sql (z plikiem do importu twojej bazy), zaloguj się do swojej bazy danych (wcześniej oczywiście musiała być ona tam przez ciebie utworzona)

$ mysql -u user -p

user, to użytkownik twojej bazy danych. Wciśnij Enter i podaj hasło dostępu do bazy

następnie wybierz swoja bazę wydając polecenie

use nazwatwojejbazy;

nazwatwojejbazy, to oczywiście właściwa nazwa Twojej bazy jaka podałeś przy jej zakładaniu na Twoim nowym serwerze 🙂

Następnie nadeszła chwila samego importu wyeksportowanych wcześniej danych bazy, Twojej witryny internetowej.

source nazwabazy.sql

nazwabazy, to właściwa nazwa pliku .sql z danymi twojej strony.

Jeśli zrobiłeś wszystko dokładnie tak, jak to opisałem powyżej, to właśnie twoja nowo utworzona baza, zapełniła się danymi Twojej strony internetowej i jest gotowa do użytku.

Jak wielkie bazy możesz importować w ten sposób?

Nie ma tutaj żadnych limitów. Możesz w ten sposób importować nawet Gigabajtowe, czy też Terabajtowe bazy, a faktycznym ograniczeniem jest tu jedynie pojemność quota Twojego serwera.

Jeśli nie udało ci się zaimportować w podany sposób swojej bazy, przejrzyj raz jeszcze krok po kroku podany schemat i ponów proces takiego importu. Jeżeli natomiast jesteś pewny, że wszystko wykonujesz poprawnie, a baza jednak z jakiegoś powodu nie może zostać zaimportowana, skontaktuj się ze swoim dostawcą serwera i zapytaj, czy on czegoś nie blokuje.

Jak podpiąć tak zaimportowaną bazę danych pod swoją stronę internetową ?

Robisz to dokładnie tak samo jak na swoim starym serwerze. Jeśli zmieniła się nazwa bazy, użytkownika bazy, czy też hasło, dokonujesz odpowiednich zmian w pliku konfiguracyjnym swojej strony i zapisujesz zmiany.

Po takiej operacji większość stron powinna zacząć działać. Jeśli natomiast coś jest nie tak, są jakieś błędy, warningi itp. które nie dotyczą połączenia z bazą, braków tabel, czy danych w bazie znaczy to, że problemy leża gdzieś indziej, najprawdopodobniej w zmienionej strukturze katalogów, prawach do katalogów i plików itp. Ten artykuł nie obejmuje jednak zagadnień jak radzić sobie skutecznie z takimi problemami, jest to może jednak dobry temat, na któryś z kolejnych artykułów.