---
title: "Datenbankmigration: einen Dump konvertieren"
description: "Migriere zwischen MySQL, MariaDB, PostgreSQL, SQL Server, SQLite und Oracle: ein Dump wird ein Skript mit denselben Tabellen, Schlüsseln und Daten, plus Bericht."
canonical: https://intosql.com/de/datenbankmigration
last_updated: 2026-10-15
---

# Datenbankmigration: einen Dump konvertieren

Zieh einen Dump aus mysqldump, mariadb-dump, pg_dump, SSMS, SQL Developer oder SQLcl oder eine SQLite-.db-Datei hierher und lade ein Skript für PostgreSQL, MySQL, MariaDB, SQLite, SQL Server oder Oracle herunter, mit denselben Tabellen, Schlüsseln, Indizes und Daten. Jede Änderung steht in einem Bericht, und der Dump verlässt nie deinen Computer.

## Alle Datenbankpaare

Die Zeilen sind die Datenbank, aus der der Dump stammt, die Spalten die Datenbank, für die das Skript ist. Jedes Paar hat eine eigene Seite mit dem dafür eingerichteten Konverter, den Regeln, die er anwendet, und wie das Skript geladen wird.

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

[Datentypen für jedes Paar](https://intosql.com/docs/types#from-one-database-to-another)

## Was erhalten bleibt und was gemeldet wird

Der Konverter liest den Dump selbst, ohne Datenbankserver, und schreibt das Skript aus dem, was er enthält. Die Seite jedes Paares listet die Regeln, die es anwendet, zwischen 25 und 67 pro Paar, mit der Berichtszeile, die jede schreibt.

### Im Skript erhalten

- Tabellen und Spalten, jeweils mit dem nächstliegenden Typ des Ziels samt Länge und Genauigkeit.
- Primär-, Unique- und Fremdschlüssel, Indizes und Standardwerte.
- AUTO_INCREMENT-, Identity- und Serial-Spalten, mit der ID jeder Zeile und dem Zähler, der dort weiterläuft, wo der Dump ihn gelassen hat.
- Jede Zeile, mit Datumswerten, Dezimalzahlen, Text und Binärwerten so, wie der Dump sie enthält.

### Im Bericht aufgeführt

- Werte, die das Ziel so nicht speichern kann, etwa ein Datum 0000-00-00 in PostgreSQL, mit der Spalte und der Anzahl. (`invalid_date_null`)
- Typen, die das Ziel nicht hat, etwa ENUM oder INET6, mit dem Typ, der jeweils daraus wurde. (`type_replaced`)
- Views, Trigger, Prozeduren, Funktionen und Events, mit Namen: Sie sind in der eigenen Sprache jeder Datenbank geschrieben und werden daher nicht konvertiert. (`not_converted_objects`)
- Text, der in seinem Zeichensatz ungültig ist, und Dumps, die ihre 4-Byte-Zeichen schon verloren haben. (`invalid_utf8_replaced`)

## Im Vergleich mit pgloader gemessen

Dieselben Dumps, konvertiert und geladen von IntoSQL und von pgloader 3.6.7 auf einem Rechner (ein i9-10900K mit 10 Kernen und einer SATA SSD), im Oktober 2026.

- Eine TINYINT(1)-Spalte mit 2, -1 und -5: pgloader lädt für jeden Wert true, ohne Warnung. IntoSQL behält die Zahlen, und der Bericht sagt warum.
- Ein Dump mit dem Standardwert 'it's', einer Tabelle mit einem Backtick im Namen, einem ENUM mit dem leeren Wert und einer TIME über 24 Stunden: pgloader bricht ab. IntoSQL konvertiert und lädt ihn.
- Was pgloader lädt, hat seine Primärschlüssel, eindeutigen Schlüssel, Fremdschlüssel und Identity-Spalten verloren. IntoSQL behält sie alle.
- Ein Dump von 5.3 GB mit 30 Millionen Zeilen: pgloader braucht ihn zuerst in einem laufenden MySQL wiederhergestellt, was 18 Minuten dauert, und dann geht ihm mit den Standardeinstellungen der Speicher aus. IntoSQL konvertiert den Dump in 10 Sekunden, und psql lädt das Skript in etwa 3 Minuten.
- Über 476 Dumps aus MySQL 5.5 bis 9 und MariaDB 10.3 bis 12, geladen in PostgreSQL 13 und 18: keine Ladefehler und kein geänderter Wert ohne eine Zeile im Bericht.

[Die Seite MySQL zu PostgreSQL](https://intosql.com/de/mysql-in-postgresql)

## Die vorhandene Datenbank exportieren

Der Konverter liest eine Datei, keinen laufenden Server. Jede Datenbank schreibt eine mit ihren eigenen Werkzeugen:

### MySQL

Ein Dump aus mysqldump, mysqlpump, phpMyAdmin oder Adminer, als .sql oder .sql.gz. Mit --default-character-set=utf8mb4 --hex-blob --routines --triggers --events bleibt am meisten erhalten. [Leitfaden: MySQL zu PostgreSQL migrieren](https://intosql.com/docs/migrations/mysql-to-postgresql)

### MariaDB

Ein Dump aus mariadb-dump, mysqldump, phpMyAdmin oder Adminer, als .sql oder .sql.gz, mit denselben Optionen wie bei MySQL. [Leitfaden: MariaDB zu PostgreSQL migrieren](https://intosql.com/docs/migrations/mariadb-to-postgresql)

### PostgreSQL

Ein Klartext-Dump aus pg_dump oder pg_dumpall. Ein Custom-Archiv (-Fc) wird mit pg_restore -f dump.sql zu einem, ohne Server. [Leitfaden: PostgreSQL zu MySQL migrieren](https://intosql.com/docs/migrations/postgresql-to-mysql)

### SQL Server

Das Skript, das Generate Scripts in SSMS schreibt, mit Types of data to script auf Schema and data. dbatools und mssql-scripter schreiben dasselbe. [Leitfaden: SQL Server zu PostgreSQL migrieren](https://intosql.com/docs/migrations/sql-server-to-postgresql)

### SQLite

Die Datenbankdatei selbst (.db, .sqlite, .sqlite3) oder das SQL, das sqlite3 app.db .dump schreibt. [Leitfaden: SQLite zu PostgreSQL migrieren](https://intosql.com/docs/migrations/sqlite-to-postgresql)

### Oracle

Die .sql-Datei, die Database Export in SQL Developer oder SQLcl schreibt, mit DDL und Insert-Anweisungen. Eine .dmp-Datei aus exp oder expdp muss zuerst importiert und erneut exportiert werden. [Leitfaden: Oracle zu PostgreSQL migrieren](https://intosql.com/docs/migrations/oracle-to-postgresql)

## Fragen zur Datenbankmigration

### Wird mein Dump hochgeladen?

Nein. Der Konverter läuft in deinem Browser und liest den Dump stückweise von deiner Festplatte, daher verlässt er nie deinen Computer. Die Desktop-App und die Kommandozeile konvertieren ebenfalls auf deinem Computer.

### Wie groß darf der Dump sein?

Der Konverter hält nie den ganzen Dump im Speicher: Er liest die Datei zweimal, in Abschnitten, und schreibt das Skript fortlaufend. Dumps von mehreren Gigabyte werden im Browser, in der Desktop-App und mit der Kommandozeile konvertiert.

### Aus welchen Versionen kann der Dump stammen?

MySQL 5.5 bis 9, MariaDB 10.3 bis 12, PostgreSQL ab 10, SQL Server ab 2017, SQLite ab 3.0 und Oracle ab 11g. Die Seite jedes Paares nennt die Versionen, auf denen sein Skript lädt.

### Brauche ich einen laufenden Datenbankserver?

Nein. Der Konverter liest die Dump-Datei selbst, die Quelldatenbank muss also nirgends laufen. Das Skript lädt mit dem eigenen Client des Ziels, etwa psql, mysql oder sqlcmd.

### Was wird nicht konvertiert?

Views, Trigger, Stored Procedures, Funktionen und Events sind in der eigenen Sprache jeder Datenbank geschrieben und stehen daher mit Namen im Bericht. Tabellen, Schlüssel, Indizes und Zeilen sind alle im Skript.

### Kann es das Skript direkt in meine Datenbank laden?

Die Desktop-App und der Befehl intosql load schreiben kostenlos direkt in SQLite und mit IntoSQL Pro in PostgreSQL, MySQL und MariaDB. Für SQL Server und Oracle führst du das Skript mit sqlcmd oder sqlplus aus.
