Rozdział 12 · 12.5
Import bazy danych, także dużych plików
Import pozwala wczytać eksport (plik .sql lub .sql.gz) do bazy danych. Robią to Państwo na przykład podczas przenoszenia strony internetowej od innego dostawcy do WebOké lub przy przywracaniu wcześniej wykonanego eksportu.
Zanim Państwo zaczną
- Najpierw prosimy utworzyć bazę danych (zobacz Tworzenie bazy danych). Plik importu zawiera zwykle tylko zawartość, a nie samą bazę danych.
- Importują Państwo dane do istniejącej bazy danych? Prosimy najpierw wykonać eksport jej obecnej zawartości (zobacz Eksportowanie bazy danych). Tabele o tej samej nazwie zostaną zastąpione.
- Czy plik zawiera polecenie CREATE DATABASE lub USE z inną nazwą bazy danych? Wtedy import zakończy się błędem dotyczącym uprawnień. Prosimy usunąć te wiersze lub ponownie wykonać eksport u poprzedniego dostawcy bez tych poleceń.
Import w DirectAdmin
- Prosimy przejść do Bazy danych i przy wybranej bazie danych kliknąć Zarządzaj.
- W sekcji Operacje bazy danych prosimy kliknąć Import i wybrać na komputerze plik .sql lub .gz.
- DirectAdmin zapyta: „Kontynuować import pliku do bazy danych?”. Jeśli chcą Państwo najpierw całkowicie opróżnić bazę danych, prosimy włączyć opcję Wyczyść bazę danych (1): cała obecna zawartość zostanie wtedy usunięta przed importem. Przydaje się to, gdy chcą Państwo w całości zastąpić starą wersję.
- Prosimy kliknąć TAK (2). Po zakończeniu importu w sekcji Podgląd widoczna jest liczba tabel.

Import w phpMyAdmin
- Prosimy otworzyć phpMyAdmin (zobacz Otwieranie phpMyAdmin i praca z nim) i kliknąć po lewej stronie bazę danych, do której ma nastąpić import.
- Prosimy kliknąć u góry zakładkę Import.
- Przy File to import prosimy kliknąć Browse i wybrać plik. Obok przycisku podany jest maksymalny dozwolony rozmiar pliku (1). U nas wynosi on 1024 MiB (1 GB).
- Pozostałe ustawienia prosimy pozostawić bez zmian i kliknąć na dole Import.

Import dużego pliku bazy danych
Plik jest większy, niż pozwala import, albo import zatrzymuje się w połowie z powodu przekroczenia limitu czasu (przy dużych plikach może się to zdarzyć także poniżej 1 GB)? Prosimy wypróbować poniższe sposoby, od najłatwiejszego do najtrudniejszego:
- Prosimy skompresować plik. Plik .sql zapisany jako .sql.gz jest często pięć do dziesięciu razy mniejszy, a zarówno DirectAdmin, jak i phpMyAdmin potrafią bezpośrednio wczytać plik .gz. Na komputerze plik .gz można utworzyć na przykład za pomocą programu 7-Zip (Windows) lub poleceniem gzip bestand.sql (Mac i Linux).
- Prosimy importować plik w częściach. U poprzedniego dostawcy prosimy wyeksportować duże tabele osobno lub podzielić plik programem do dzielenia plików SQL. Następnie prosimy zaimportować części jedna po drugiej, we właściwej kolejności.
- Prosimy użyć SSH. Jeśli mają Państwo pakiet z dostępem SSH (Power Webhost Three i Four, AI Wordpress Three oraz Power Reseller), prosimy przesłać plik przez FTP do katalogu głównego pakietu (nie do public_html) i zaimportować go w Terminalu poleceniem mysql -u gebruiker -p databasenaam < bestand.sql (zobacz Terminal w przeglądarce). W tym przypadku nie obowiązuje żaden limit rozmiaru.
- Prosimy zwrócić się do nas. Jeśli import się nie powiedzie, prosimy utworzyć zgłoszenie. Prosimy umieścić plik w katalogu głównym pakietu i podać nazwę pliku oraz bazy danych. Zaimportujemy go za Państwa.
Uwaga: Prosimy nigdy nie umieszczać pliku bazy danych w katalogu public_html. Wtedy każdy, kto odgadnie jego nazwę, może go pobrać, razem ze wszystkimi danymi Państwa strony internetowej i klientów. Po zakończeniu importu prosimy usunąć plik również z katalogu głównego.
Po imporcie
- Czy nazwa bazy danych, użytkownik i hasło w pliku konfiguracyjnym Państwa strony internetowej są prawidłowe (zobacz Użytkownicy baz danych, uprawnienia i hasła)?
- Czy adres Państwa strony internetowej się zmienił, na przykład z adresu tymczasowego na własną domenę? Prosimy wtedy zastąpić go w całej bazie danych za pomocą WP-CLI lub wtyczki do wyszukiwania i zamiany, która obsługuje dane serializowane (zobacz poniżej). Jedynie siteurl i home można w razie potrzeby najpierw zmienić ręcznie w phpMyAdmin (zobacz Otwieranie phpMyAdmin i praca z nim).
Uwaga: dane serializowane. Do zmiany adresu lub ścieżki prosimy nigdy nie używać funkcji Find and replace w phpMyAdmin, polecenia SQL takiego jak REPLACE ani wyszukiwania i zamiany w samym pliku .sql. WordPress i wiele wtyczek przechowuje ustawienia jako serializowane dane PHP, zawierające długość każdego tekstu. Jeśli po zamianie długość ta się nie zgadza, PHP nie może odczytać danych i znikają na przykład menu, logo lub widżety. Prosimy użyć WP-CLI (wp search-replace, najpierw z opcją --dry-run) lub odpowiedniej wtyczki. Jak to zrobić, opisujemy w artykule Wyszukiwanie i zamiana w bazie danych WordPress.
