Import i eksport bazy
Jak wykonać backup bazy MySQL/MariaDB przez phpMyAdmin lub mysqldump CLI. Import dump z innego serwera, migracja, najczęstsze problemy z formatami i wielkością.
Backup bazy danych = export do pliku .sql. Plik .sql to po prostu tekst z komendami INSERT — można otworzyć w notatniku, edytować, importować gdzie indziej. W DA robisz to przez phpMyAdmin (najprostsze) albo mysqldump CLI (gdy SSH dostępne).
Co zyskasz
- Wyeksportujesz bazę do pliku
.sqljako backup. - Zaimportujesz dump z innego serwera (migracja).
- Wybierzesz między phpMyAdmin a mysqldump.
- Rozwiążesz problemy z dużymi bazami (>50 MB).
Wymagania wstępne
- Istniejąca baza w DA.
Wskazówka
Format
.sqlto standard. Każda baza MySQL/MariaDB na świecie obsługuje import takiego pliku. Działa również jako migracja: eksport z home.pl → import w IQHost.
Eksport przez phpMyAdmin
Krok 1: Otwórz phpMyAdmin
Dodatkowe funkcje → phpMyAdmin lub bezpośrednio z Bazy danych → ikonka phpMyAdmin obok bazy.
![]()
Krok 2: Wybierz bazę
W lewej kolumnie klik na nazwę bazy (np.
host36592_wp).
Krok 3: Zakładka „Eksport"
U góry zakładka Eksport. Dwa tryby:
Szybki (jeden klik):
- Format: SQL
- Klik Wykonaj → pobierze plik
host36592_wp.sqlDostosowany (więcej opcji):
- Tabele — zaznacz które chcesz (domyślnie wszystkie)
- Format — SQL / CSV / XML / JSON
- Opcje wyjściowe — kompresja gzip
- Specyficzne opcje SQL — zwykle zostaw default
Klik Wykonaj → pobierze plik.
Krok 4: Zachowaj backup
Plik
.sqlzapisz lokalnie. Dla bezpieczeństwa:
- Codzienne backupy (cron + mysqldump + upload do dropbox/S3)
- Przed dużymi zmianami (aktualizacja CMS, ręczne UPDATE)
- Przed migracją
Import przez phpMyAdmin
Krok 1: Wybierz bazę docelową
W lewej kolumnie klik na bazę gdzie chcesz wgrać dane.
::: callout warn Import na pustą bazę. Jeśli baza ma już tabele z tymi samymi nazwami, import nadpisze (lub błąd, zależy od opcji
DROP TABLE IF EXISTSw dumpie).Bezpieczna procedura: utwórz nową bazę, importuj tam. Patrz Tworzenie bazy.
Krok 2: Zakładka „Import"
U góry zakładka Import.
- Plik do zaimportowania — wybierz
.sqlz dysku lokalnego- Format — SQL (auto-detekcja)
- Specyficzne opcje SQL — zostaw default
Klik Wykonaj → import startuje.
Krok 3: Sprawdź
Po zakończeniu phpMyAdmin pokazuje sukces / błąd. Sprawdź w lewej kolumnie czy tabele się pojawiły.
mysqldump CLI (gdy SSH)
Dla pakietów HS5+ masz SSH. Wtedy mysqldump jest najszybszy:
Eksport
# Łącz się przez SSH
ssh host36592@host36592.iqhs.pl
# Eksport bazy
mysqldump -u host36592_wp -p host36592_wp > backup-2026-05-13.sql
# Pyta o hasło
# Eksport z kompresją gzip (mniejszy plik)
mysqldump -u host36592_wp -p host36592_wp | gzip > backup.sql.gz
# Eksport wszystkich baz na koncie
mysqldump -u host36592_wp -p --all-databases > all-databases.sql
Import
# Import z .sql
mysql -u host36592_wp -p host36592_wp < backup.sql
# Import z .sql.gz
gunzip < backup.sql.gz | mysql -u host36592_wp -p host36592_wp
Wskazówka
Hasło w .my.cnf żeby nie wpisywać za każdym razem:
[client] user=host36592_wp password=TwojeHasloPlik
~/.my.cnfz chmod 600 (tylko właściciel czyta).
Wielkie bazy — limity
phpMyAdmin ma limity:
- upload_max_filesize (PHP) — zwykle 100 MB
- max_execution_time (PHP) — zwykle 300 sekund
Dla baz >100 MB phpMyAdmin może zawieść. Rozwiązania:
- mysqldump CLI (HS5+) — brak takich limitów
- Split SQL — podziel dump na mniejsze pliki (każdy plik = jedna tabela)
- Kompresja gzip — często zmniejsza 5-10x
Migracja: stary serwer → IQHost
Typowa procedura przeniesienia strony:
- Stary serwer: mysqldump →
.sql(lub phpMyAdmin Export) - IQHost: utwórz nową bazę (taką samą nazwę albo nową — w wp-config zmienisz)
- IQHost: importuj
.sqlw phpMyAdmin lubmysql < file.sqlprzez SSH - Zaktualizuj
wp-config.phpz nowymi credentialami - Search-replace URL w bazie (jeśli zmieniła się domena):
UPDATE wp_options SET option_value = 'https://mojafirma.pl' WHERE option_name IN ('siteurl', 'home');
Albo plugin Better Search Replace (zamienia w całej bazie).
Najczęstsze problemy
1. „Plik za duży do importu"
- Kompresja gzip (
.sql.gzzamiast.sql) - Split na tabele (eksport każdej osobno)
- Użyj SSH + mysql CLI
2. „Błąd podczas importu — duplicate entry"
Tabela już istnieje z tymi samymi PK. Albo:
- Drop istniejących tabel przed importem
- Albo użyj opcji
--ignorew mysqldump (pomija duplikaty)
3. „Polskie znaki — krzaczki po imporcie"
Charset mismatch. Sprawdź pierwsze linie pliku .sql:
SET NAMES utf8mb4;
SET CHARACTER SET utf8mb4;
Jeśli brakuje — dump był ze starszego MySQL bez UTF8. Konwertuj lokalnie:
iconv -f WINDOWS-1250 -t UTF-8 backup.sql > backup-utf8.sql
4. „Migracja WordPress — strona pokazuje stary URL"
URL hardcoded w bazie (wp_options.siteurl, wp_options.home, plus w meta i postach). Użyj Better Search Replace plugin lub WP-CLI.
5. „MariaDB collation issue"
Niektóre dumpy MySQL używają collation niedostępnej w MariaDB. Edytuj .sql w notatniku:
Zamień: utf8mb4_0900_ai_ci (MySQL 8) → utf8mb4_unicode_ci (MariaDB)
6. „Restore z *.sql.gz w phpMyAdmin"
phpMyAdmin obsługuje. Wybierz plik, on automatycznie dekompresuje.
7. „Eksport zawiera CREATE DATABASE — błąd przy imporcie"
Niektóre dumps zawierają CREATE DATABASE na początku. Jeśli baza już istnieje, dostajesz błąd. Edytuj .sql, usuń te linie. Albo eksportuj bez nich (opcja w phpMyAdmin).
Słowniczek
- mysqldump — narzędzie CLI do eksportu MySQL.
.sqldump — plik tekstowy z komendami INSERT (i opcjonalnie CREATE TABLE, DROP TABLE).- Collation — zasady sortowania znaków w bazie.
- WP-CLI — narzędzie CLI WordPress, ma
wp db export/import.
Related
Feedback
Czy ten artykuł pomógł?
