---
title: "Migracja bazy danych: konwersja zrzutu bazy"
description: "Migruj między MySQL, MariaDB, PostgreSQL, SQL Server, SQLite i Oracle: zamień zrzut w skrypt z tymi samymi tabelami, kluczami i danymi oraz raportem zmian."
canonical: https://intosql.com/pl/migracja-bazy-danych
last_updated: 2026-10-15
---

# Migracja bazy danych: konwersja zrzutu bazy

Upuść zrzut z mysqldump, mariadb-dump, pg_dump, SSMS, SQL Developer lub SQLcl albo plik .db SQLite i pobierz jeden skrypt dla PostgreSQL, MySQL, MariaDB, SQLite, SQL Server lub Oracle z tymi samymi tabelami, kluczami, indeksami i danymi. Każda zmiana jest wymieniona w raporcie, a zrzut nigdy nie opuszcza twojego komputera.

## Każda para baz danych

Wiersze to baza danych, z której pochodzi zrzut, kolumny to baza danych, dla której jest skrypt. Każda para ma własną stronę z konwerterem ustawionym dla niej, regułami, które stosuje, i opisem ładowania skryptu.

- MySQL: [MySQL do PostgreSQL](https://intosql.com/pl/mysql-do-postgresql), [MySQL do MySQL](https://intosql.com/pl/mysql-do-mysql), [MySQL do MariaDB](https://intosql.com/pl/mysql-do-mariadb), [MySQL do SQLite](https://intosql.com/pl/mysql-do-sqlite), [MySQL do SQL Server](https://intosql.com/pl/mysql-do-sql-server), [MySQL do Oracle](https://intosql.com/pl/mysql-do-oracle)
- MariaDB: [MariaDB do PostgreSQL](https://intosql.com/pl/mariadb-do-postgresql), [MariaDB do MySQL](https://intosql.com/pl/mariadb-do-mysql), [MariaDB do MariaDB](https://intosql.com/pl/mariadb-do-mariadb), [MariaDB do SQLite](https://intosql.com/pl/mariadb-do-sqlite), [MariaDB do SQL Server](https://intosql.com/pl/mariadb-do-sql-server), [MariaDB do Oracle](https://intosql.com/pl/mariadb-do-oracle)
- PostgreSQL: [PostgreSQL do PostgreSQL](https://intosql.com/pl/postgresql-do-postgresql), [PostgreSQL do MySQL](https://intosql.com/pl/postgresql-do-mysql), [PostgreSQL do MariaDB](https://intosql.com/pl/postgresql-do-mariadb), [PostgreSQL do SQLite](https://intosql.com/pl/postgresql-do-sqlite), [PostgreSQL do SQL Server](https://intosql.com/pl/postgresql-do-sql-server), [PostgreSQL do Oracle](https://intosql.com/pl/postgresql-do-oracle)
- SQL Server: [SQL Server do PostgreSQL](https://intosql.com/pl/sql-server-do-postgresql), [SQL Server do MySQL](https://intosql.com/pl/sql-server-do-mysql), [SQL Server do MariaDB](https://intosql.com/pl/sql-server-do-mariadb), [SQL Server do SQLite](https://intosql.com/pl/sql-server-do-sqlite), [SQL Server do SQL Server](https://intosql.com/pl/sql-server-do-sql-server), [SQL Server do Oracle](https://intosql.com/pl/sql-server-do-oracle)
- SQLite: [SQLite do PostgreSQL](https://intosql.com/pl/sqlite-do-postgresql), [SQLite do MySQL](https://intosql.com/pl/sqlite-do-mysql), [SQLite do MariaDB](https://intosql.com/pl/sqlite-do-mariadb), [SQLite do SQLite](https://intosql.com/pl/sqlite-do-sqlite), [SQLite do SQL Server](https://intosql.com/pl/sqlite-do-sql-server), [SQLite do Oracle](https://intosql.com/pl/sqlite-do-oracle)
- Oracle: [Oracle do PostgreSQL](https://intosql.com/pl/oracle-do-postgresql), [Oracle do MySQL](https://intosql.com/pl/oracle-do-mysql), [Oracle do MariaDB](https://intosql.com/pl/oracle-do-mariadb), [Oracle do SQLite](https://intosql.com/pl/oracle-do-sqlite), [Oracle do SQL Server](https://intosql.com/pl/oracle-do-sql-server), [Oracle do Oracle](https://intosql.com/pl/oracle-do-oracle)

[Typy danych dla każdej pary](https://intosql.com/docs/types#from-one-database-to-another)

## Co jest zachowane, a co zgłaszane

Konwerter czyta sam zrzut, bez serwera bazy danych, i zapisuje skrypt na podstawie jego zawartości. Strona każdej pary wymienia reguły, które stosuje, od 25 do 67 na parę, z wpisem w raporcie, który dodaje każda z nich.

### Zachowane w skrypcie

- Tabele i kolumny, każda z najbliższym typem dostępnym w bazie docelowej oraz z jej długością i precyzją.
- Klucze główne, unikalne i obce, indeksy i wartości domyślne.
- Kolumny AUTO_INCREMENT, identity i serial, z identyfikatorem każdego wiersza i licznikiem kontynuowanym od miejsca, w którym zostawił go zrzut.
- Każdy wiersz, z datami, liczbami dziesiętnymi, tekstem i wartościami binarnymi takimi, jakie są w zrzucie.

### Wymienione w raporcie

- Wartości, których baza docelowa nie przechowa bez zmian, na przykład data 0000-00-00 w PostgreSQL, z kolumną i liczbą wystąpień. (`invalid_date_null`)
- Typy, których baza docelowa nie ma, na przykład ENUM lub INET6, z typem, którym każdy się stał. (`type_replaced`)
- Widoki, wyzwalacze, procedury, funkcje i zdarzenia, z nazwy: są pisane we własnym języku każdej bazy danych, więc nie są konwertowane. (`not_converted_objects`)
- Tekst, który nie jest poprawny w swoim zestawie znaków, oraz zrzuty, które już straciły znaki 4-bajtowe. (`invalid_utf8_replaced`)

## Porównanie z pgloader

Te same zrzuty, przekonwertowane i załadowane przez IntoSQL i przez pgloader 3.6.7 na jednej maszynie (10-rdzeniowy i9-10900K z SATA SSD), w październiku 2026.

- Kolumna TINYINT(1) z wartościami 2, -1 i -5: pgloader ładuje dla każdej true, bez ostrzeżenia. IntoSQL zachowuje liczby, a raport wyjaśnia dlaczego.
- Zrzut z wartością domyślną 'it's', tabelą z grawisem w nazwie, ENUM z pustą wartością i TIME powyżej 24 godzin: pgloader się zatrzymuje. IntoSQL go konwertuje i ładuje.
- To, co ładuje pgloader, traci klucze główne, unikalne i obce oraz kolumny identity. IntoSQL zachowuje każdy z nich.
- Zrzut 5.3 GB z 30 milionami wierszy: pgloader wymaga najpierw odtworzenia go w działającym MySQL, co zajmuje 18 minut, a potem przy ustawieniach domyślnych brakuje mu pamięci. IntoSQL konwertuje zrzut w 10 sekund, a psql ładuje skrypt w około 3 minuty.
- W 476 zrzutach z MySQL od 5.5 do 9 i MariaDB od 10.3 do 12, załadowanych do PostgreSQL 13 i 18: bez błędów ładowania, a żadna wartość nie zmieniła się bez wpisu w raporcie.

[Strona MySQL do PostgreSQL](https://intosql.com/pl/mysql-do-postgresql)

## Wyeksportuj bazę danych, którą masz

Konwerter czyta plik, a nie działający serwer. Każda baza danych zapisuje go własnymi narzędziami:

### MySQL

Zrzut z mysqldump, mysqlpump, phpMyAdmin lub Adminer, jako .sql lub .sql.gz. Opcje --default-character-set=utf8mb4 --hex-blob --routines --triggers --events zachowują najwięcej. [Przewodnik migracji MySQL do PostgreSQL](https://intosql.com/docs/migrations/mysql-to-postgresql)

### MariaDB

Zrzut z mariadb-dump, mysqldump, phpMyAdmin lub Adminer, jako .sql lub .sql.gz, z tymi samymi opcjami co dla MySQL. [Przewodnik migracji MariaDB do PostgreSQL](https://intosql.com/docs/migrations/mariadb-to-postgresql)

### PostgreSQL

Zwykły zrzut z pg_dump lub pg_dumpall. Archiwum niestandardowe (-Fc) zamienia się w taki zrzut poleceniem pg_restore -f dump.sql, bez serwera. [Przewodnik migracji PostgreSQL do MySQL](https://intosql.com/docs/migrations/postgresql-to-mysql)

### SQL Server

Skrypt, który zapisuje Generate Scripts w SSMS, z opcją Types of data to script ustawioną na Schema and data. dbatools i mssql-scripter zapisują to samo. [Przewodnik migracji SQL Server do PostgreSQL](https://intosql.com/docs/migrations/sql-server-to-postgresql)

### SQLite

Sam plik bazy danych (.db, .sqlite, .sqlite3) albo SQL zapisany przez sqlite3 app.db .dump. [Przewodnik migracji SQLite do PostgreSQL](https://intosql.com/docs/migrations/sqlite-to-postgresql)

### Oracle

Plik .sql zapisany przez Database Export w SQL Developer lub przez SQLcl, z instrukcjami DDL i Insert. Plik .dmp z exp lub expdp trzeba najpierw zaimportować i wyeksportować ponownie. [Przewodnik migracji Oracle do PostgreSQL](https://intosql.com/docs/migrations/oracle-to-postgresql)

## Pytania o migrację bazy danych

### Czy mój zrzut jest wysyłany?

Nie. Konwerter działa w przeglądarce i odczytuje zrzut z dysku po kawałku, więc nigdy nie opuszcza on twojego komputera. Aplikacja na komputer i wiersz poleceń też konwertują na twoim komputerze.

### Jak duży może być zrzut?

Konwerter nigdy nie trzyma całego zrzutu w pamięci: czyta plik dwa razy, fragmentami, i zapisuje skrypt na bieżąco. Zrzuty wielogigabajtowe konwertują się w przeglądarce, w aplikacji na komputer i w wierszu poleceń.

### Z jakich wersji może pochodzić zrzut?

MySQL od 5.5 do 9, MariaDB od 10.3 do 12, PostgreSQL 10 i nowsze, SQL Server 2017 i nowsze, SQLite 3.0 i nowsze oraz Oracle 11g i nowsze. Strona każdej pary podaje, na których wersjach ładuje się jej skrypt.

### Czy potrzebuję działającego serwera bazy danych?

Nie. Konwerter czyta sam plik zrzutu, więc źródłowa baza danych nie musi nigdzie działać. Skrypt ładuje się własnym klientem bazy docelowej, takim jak psql, mysql lub sqlcmd.

### Co nie jest konwertowane?

Widoki, wyzwalacze, procedury składowane, funkcje i zdarzenia są pisane we własnym języku każdej bazy danych, więc zamiast tego raport wymienia je z nazwy. Tabele, klucze, indeksy i wiersze są w skrypcie.

### Czy może załadować skrypt wprost do mojej bazy danych?

Aplikacja na komputer i polecenie intosql load zapisują wprost do SQLite za darmo, a do PostgreSQL, MySQL i MariaDB z IntoSQL Pro. W przypadku SQL Server i Oracle uruchom skrypt przez sqlcmd lub sqlplus.
