---
title: "Databasemigratie: een databasedump omzetten"
description: "Migreer tussen MySQL, MariaDB, PostgreSQL, SQL Server, SQLite en Oracle: zet een dump om naar een script met dezelfde tabellen, sleutels en data, met een rapport."
canonical: https://intosql.com/nl/databasemigratie
last_updated: 2026-10-15
---

# Databasemigratie: een databasedump omzetten

Sleep een dump van mysqldump, mariadb-dump, pg_dump, SSMS, SQL Developer of SQLcl, of een SQLite .db-bestand hierheen en download één script voor PostgreSQL, MySQL, MariaDB, SQLite, SQL Server of Oracle met dezelfde tabellen, sleutels, indexen en data. Elke wijziging staat in een rapport, en de dump verlaat je computer nooit.

## Elke databasecombinatie

Rijen zijn de database waar de dump vandaan komt, kolommen de database waarvoor het script is. Elke combinatie heeft een eigen pagina met de converter daarvoor ingesteld, de regels die hij toepast en hoe je het script laadt.

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

[Datatypen per databasecombinatie](https://intosql.com/docs/types#from-one-database-to-another)

## Wat behouden blijft en wat gemeld wordt

De converter leest de dump zelf, zonder databaseserver, en schrijft het script op basis van wat erin staat. De pagina van elke combinatie somt de regels op die hij toepast, tussen 25 en 67 per combinatie, met de rapportregel die elke regel schrijft.

### Behouden in het script

- Tabellen en kolommen, elk met het dichtstbijzijnde type dat het doel heeft en de lengte en precisie ervan.
- Primaire, unieke en refererende sleutels, indexen en standaardwaarden.
- AUTO_INCREMENT-, identity- en serial-kolommen, met het id van elke rij en de teller die verdergaat waar de dump hem liet.
- Elke rij, met datums, decimalen, tekst en binaire waarden zoals de dump ze bevat.

### Vermeld in het rapport

- Waarden die het doel niet ongewijzigd kan bevatten, zoals een datum 0000-00-00 in PostgreSQL, met de kolom en hoeveel. (`invalid_date_null`)
- Typen die het doel niet heeft, zoals ENUM of INET6, met het type dat elk werd. (`type_replaced`)
- Weergaven, triggers, procedures, functies en events, op naam: ze zijn geschreven in de eigen taal van elke database, dus ze worden niet geconverteerd. (`not_converted_objects`)
- Tekst die niet geldig is in zijn tekenset, en dumps die hun 4-bytestekens al kwijt zijn. (`invalid_utf8_replaced`)

## Gemeten tegen pgloader

Dezelfde dumps, geconverteerd en geladen door IntoSQL en door pgloader 3.6.7 op één machine (een i9-10900K met 10 cores en een SATA SSD), in oktober 2026.

- Een TINYINT(1)-kolom met 2, -1 en -5: pgloader laadt voor elk ervan true, zonder waarschuwing. IntoSQL behoudt de getallen en het rapport legt uit waarom.
- Een dump met een standaardwaarde 'it's', een tabel met een backtick in de naam, een ENUM met de lege waarde en een TIME van meer dan 24 uur: pgloader stopt. IntoSQL converteert en laadt hem.
- Wat pgloader laadt, is zijn primaire, unieke en refererende sleutels en zijn identities kwijt. IntoSQL behoudt ze allemaal.
- Een dump van 5.3 GB met 30 miljoen rijen: pgloader moet hem eerst terugzetten in een draaiende MySQL, wat 18 minuten duurt, en heeft daarna met de standaardinstellingen te weinig geheugen. IntoSQL converteert de dump in 10 seconden, en psql laadt het script in ongeveer 3 minuten.
- Over 476 dumps van MySQL 5.5 tot en met 9 en MariaDB 10.3 tot en met 12, geladen in PostgreSQL 13 en 18: geen laadfouten, en geen waarde veranderd zonder een regel in het rapport.

[De pagina MySQL naar PostgreSQL](https://intosql.com/nl/mysql-naar-postgresql)

## De database exporteren die je hebt

De converter leest een bestand, geen draaiende server. Elke database schrijft er een met zijn eigen tools:

### MySQL

Een dump van mysqldump, mysqlpump, phpMyAdmin of Adminer, als .sql of .sql.gz. Met --default-character-set=utf8mb4 --hex-blob --routines --triggers --events blijft het meeste behouden. [Migratiehandleiding MySQL naar PostgreSQL](https://intosql.com/docs/migrations/mysql-to-postgresql)

### MariaDB

Een dump van mariadb-dump, mysqldump, phpMyAdmin of Adminer, als .sql of .sql.gz, met dezelfde opties als MySQL. [Migratiehandleiding MariaDB naar PostgreSQL](https://intosql.com/docs/migrations/mariadb-to-postgresql)

### PostgreSQL

Een gewone dump van pg_dump of pg_dumpall. Een custom-archief (-Fc) wordt er een met pg_restore -f dump.sql, zonder server. [Migratiehandleiding PostgreSQL naar MySQL](https://intosql.com/docs/migrations/postgresql-to-mysql)

### SQL Server

Het script dat Generate Scripts van SSMS schrijft, met Types of data to script op Schema and data. dbatools en mssql-scripter schrijven hetzelfde. [Migratiehandleiding SQL Server naar PostgreSQL](https://intosql.com/docs/migrations/sql-server-to-postgresql)

### SQLite

Het databasebestand zelf (.db, .sqlite, .sqlite3), of de SQL die sqlite3 app.db .dump schrijft. [Migratiehandleiding SQLite naar PostgreSQL](https://intosql.com/docs/migrations/sqlite-to-postgresql)

### Oracle

Het .sql-bestand dat Database Export van SQL Developer of SQLcl schrijft, met DDL en Insert-statements. Een .dmp-bestand van exp of expdp moet eerst opnieuw worden geïmporteerd en geëxporteerd. [Migratiehandleiding Oracle naar PostgreSQL](https://intosql.com/docs/migrations/oracle-to-postgresql)

## Vragen over databasemigratie

### Wordt mijn dump geüpload?

Nee. De converter draait in je browser en leest de dump in delen van je schijf, dus hij verlaat je computer nooit. De desktopapp en de opdrachtregel converteren ook op je computer.

### Hoe groot mag de dump zijn?

De converter houdt nooit de hele dump in het geheugen: hij leest het bestand twee keer, in bereiken, en schrijft het script gaandeweg. Dumps van meerdere gigabytes worden geconverteerd in de browser, in de desktopapp en met de opdrachtregel.

### Van welke versies kan de dump komen?

MySQL 5.5 tot en met 9, MariaDB 10.3 tot en met 12, PostgreSQL 10 en later, SQL Server 2017 en later, SQLite 3.0 en later, en Oracle 11g en later. De pagina van elke combinatie zegt op welke versies het script laadt.

### Heb ik een draaiende databaseserver nodig?

Nee. De converter leest het dumpbestand zelf, dus de brondatabase hoeft nergens te draaien. Het script laadt met de eigen client van het doel, zoals psql, mysql of sqlcmd.

### Wat wordt niet geconverteerd?

Weergaven, triggers, opgeslagen procedures, functies en events zijn geschreven in de eigen taal van elke database, dus ze staan in plaats daarvan op naam in het rapport. De tabellen, sleutels, indexen en rijen staan allemaal in het script.

### Kan het het script rechtstreeks in mijn database laden?

De desktopapp en het commando intosql load schrijven gratis rechtstreeks in SQLite, en met IntoSQL Pro in PostgreSQL, MySQL en MariaDB. Voer het script voor SQL Server en Oracle uit met sqlcmd of sqlplus.
