---
title: "データベース移行: ダンプを変換"
description: "MySQL、MariaDB、PostgreSQL、SQL Server、SQLite、Oracle 間で移行。ダンプを同じテーブル、キー、データを持つスクリプトに変換し、すべての変更をレポートします。"
canonical: https://intosql.com/ja/database-migration
last_updated: 2026-10-15
---

# データベース移行: ダンプを変換

mysqldump、mariadb-dump、pg_dump、SSMS、SQL Developer、SQLcl のダンプか SQLite の .db ファイルをドロップすると、同じテーブル、キー、インデックス、データを持つ PostgreSQL、MySQL、MariaDB、SQLite、SQL Server、Oracle 用のスクリプトをダウンロードできます。すべての変更はレポートに記載され、ダンプがコンピューターの外に出ることはありません。

## すべてのデータベースの組み合わせ

行はダンプの変換元、列はスクリプトの変換先のデータベースです。各組み合わせには専用のページがあり、設定済みのコンバーター、適用されるルール、スクリプトの読み込み方法を掲載しています。

- MySQL: [MySQL から PostgreSQL へ](https://intosql.com/ja/mysql-to-postgresql), [MySQL から MySQL へ](https://intosql.com/ja/mysql-to-mysql), [MySQL から MariaDB へ](https://intosql.com/ja/mysql-to-mariadb), [MySQL から SQLite へ](https://intosql.com/ja/mysql-to-sqlite), [MySQL から SQL Server へ](https://intosql.com/ja/mysql-to-sql-server), [MySQL から Oracle へ](https://intosql.com/ja/mysql-to-oracle)
- MariaDB: [MariaDB から PostgreSQL へ](https://intosql.com/ja/mariadb-to-postgresql), [MariaDB から MySQL へ](https://intosql.com/ja/mariadb-to-mysql), [MariaDB から MariaDB へ](https://intosql.com/ja/mariadb-to-mariadb), [MariaDB から SQLite へ](https://intosql.com/ja/mariadb-to-sqlite), [MariaDB から SQL Server へ](https://intosql.com/ja/mariadb-to-sql-server), [MariaDB から Oracle へ](https://intosql.com/ja/mariadb-to-oracle)
- PostgreSQL: [PostgreSQL から PostgreSQL へ](https://intosql.com/ja/postgresql-to-postgresql), [PostgreSQL から MySQL へ](https://intosql.com/ja/postgresql-to-mysql), [PostgreSQL から MariaDB へ](https://intosql.com/ja/postgresql-to-mariadb), [PostgreSQL から SQLite へ](https://intosql.com/ja/postgresql-to-sqlite), [PostgreSQL から SQL Server へ](https://intosql.com/ja/postgresql-to-sql-server), [PostgreSQL から Oracle へ](https://intosql.com/ja/postgresql-to-oracle)
- SQL Server: [SQL Server から PostgreSQL へ](https://intosql.com/ja/sql-server-to-postgresql), [SQL Server から MySQL へ](https://intosql.com/ja/sql-server-to-mysql), [SQL Server から MariaDB へ](https://intosql.com/ja/sql-server-to-mariadb), [SQL Server から SQLite へ](https://intosql.com/ja/sql-server-to-sqlite), [SQL Server から SQL Server へ](https://intosql.com/ja/sql-server-to-sql-server), [SQL Server から Oracle へ](https://intosql.com/ja/sql-server-to-oracle)
- SQLite: [SQLite から PostgreSQL へ](https://intosql.com/ja/sqlite-to-postgresql), [SQLite から MySQL へ](https://intosql.com/ja/sqlite-to-mysql), [SQLite から MariaDB へ](https://intosql.com/ja/sqlite-to-mariadb), [SQLite から SQLite へ](https://intosql.com/ja/sqlite-to-sqlite), [SQLite から SQL Server へ](https://intosql.com/ja/sqlite-to-sql-server), [SQLite から Oracle へ](https://intosql.com/ja/sqlite-to-oracle)
- Oracle: [Oracle から PostgreSQL へ](https://intosql.com/ja/oracle-to-postgresql), [Oracle から MySQL へ](https://intosql.com/ja/oracle-to-mysql), [Oracle から MariaDB へ](https://intosql.com/ja/oracle-to-mariadb), [Oracle から SQLite へ](https://intosql.com/ja/oracle-to-sqlite), [Oracle から SQL Server へ](https://intosql.com/ja/oracle-to-sql-server), [Oracle から Oracle へ](https://intosql.com/ja/oracle-to-oracle)

[すべての組み合わせのデータ型](https://intosql.com/docs/types#from-one-database-to-another)

## 保持されるものとレポートされるもの

コンバーターはデータベースサーバーなしでダンプを直接読み、その内容からスクリプトを書き出します。各組み合わせのページには、適用されるルール (組み合わせごとに 25 から 67 個) と、それぞれがレポートに書く行を掲載しています。

### スクリプトに保持

- テーブルと列。それぞれ変換先で最も近い型になり、長さと精度も保たれます。
- 主キー、一意キー、外部キー、インデックス、デフォルト値。
- AUTO_INCREMENT、IDENTITY、serial の列。各行の ID が保たれ、カウンターはダンプの続きから進みます。
- すべての行。日付、小数、テキスト、バイナリ値はダンプのとおりです。

### レポートに記載

- 変換先がそのまま保持できない値 (PostgreSQL での 0000-00-00 の日付など)。列と件数も記載します。 (`invalid_date_null`)
- 変換先にない型 (ENUM や INET6 など) と、それぞれの変換後の型。 (`type_replaced`)
- ビュー、トリガー、プロシージャ、関数、イベントを名前で記載。各データベース独自の言語で書かれるため、変換しません。 (`not_converted_objects`)
- 文字セットとして無効なテキストと、すでに 4 バイト文字を失っているダンプ。 (`invalid_utf8_replaced`)

## pgloader との比較

同じダンプを IntoSQL と pgloader 3.6.7 で変換して読み込み、1 台のマシン (SATA SSD 搭載の 10 コア i9-10900K) で 2026 年 10 月に測定しました。

- 2、-1、-5 を持つ TINYINT(1) 列: pgloader は警告なしに、すべてを true として読み込みます。IntoSQL は数値を保ち、レポートにその理由が書かれます。
- 'it's' というデフォルト値、バッククォートを含む名前のテーブル、空の値を持つ ENUM、24 時間を超える TIME を含むダンプ: pgloader は止まります。IntoSQL は変換して読み込みます。
- pgloader で読み込んだ結果では、主キー、一意キー、外部キー、IDENTITY が失われています。IntoSQL はすべて保持します。
- 3000 万行、5.3 GB のダンプ: pgloader は先に稼働中の MySQL への復元が必要で、それに 18 分かかり、その後デフォルト設定ではメモリ不足になります。IntoSQL はダンプを 10 秒で変換し、psql はスクリプトを約 3 分で読み込みます。
- MySQL 5.5 から 9、MariaDB 10.3 から 12 の 476 個のダンプを PostgreSQL 13 と 18 に読み込みました。読み込みエラーはなく、レポートに記載されずに変わった値もありません。

[MySQL から PostgreSQL へのページ](https://intosql.com/ja/mysql-to-postgresql)

## お使いのデータベースをエクスポート

コンバーターが読むのは実行中のサーバーではなくファイルです。各データベースは独自のツールでファイルを書き出します。

### MySQL

mysqldump、mysqlpump、phpMyAdmin、Adminer のダンプ (.sql または .sql.gz)。--default-character-set=utf8mb4 --hex-blob --routines --triggers --events を付けると最も多く保持できます。 [MySQL から PostgreSQL への移行ガイド](https://intosql.com/docs/migrations/mysql-to-postgresql)

### MariaDB

mariadb-dump、mysqldump、phpMyAdmin、Adminer のダンプ (.sql または .sql.gz)。オプションは MySQL と同じです。 [MariaDB から PostgreSQL への移行ガイド](https://intosql.com/docs/migrations/mariadb-to-postgresql)

### PostgreSQL

pg_dump または pg_dumpall のプレーンなダンプ。カスタム形式 (-Fc) は、サーバーなしで pg_restore -f dump.sql により変換できます。 [PostgreSQL から MySQL への移行ガイド](https://intosql.com/docs/migrations/postgresql-to-mysql)

### SQL Server

SSMS のスクリプトの生成で、スクリプトを作成するデータの種類を「スキーマとデータ」にして書き出したスクリプト。dbatools や mssql-scripter でも同じものが書き出せます。 [SQL Server から PostgreSQL への移行ガイド](https://intosql.com/docs/migrations/sql-server-to-postgresql)

### SQLite

データベースファイルそのもの (.db、.sqlite、.sqlite3)、または sqlite3 app.db .dump が書き出す SQL。 [SQLite から PostgreSQL への移行ガイド](https://intosql.com/docs/migrations/sqlite-to-postgresql)

### Oracle

SQL Developer のデータベース・エクスポートか SQLcl が書き出す、DDL と Insert 文を含む .sql ファイル。exp や expdp の .dmp ファイルは、先にインポートしてエクスポートし直す必要があります。 [Oracle から PostgreSQL への移行ガイド](https://intosql.com/docs/migrations/oracle-to-postgresql)

## データベース移行に関する質問

### ダンプはアップロードされますか？

いいえ。コンバーターはブラウザ上で動作し、ダンプをディスクから少しずつ読み込むため、ダンプがコンピューターの外に出ることはありません。デスクトップアプリとコマンドラインも、お使いのコンピューター上で変換します。

### ダンプはどのくらいの大きさまで扱えますか？

コンバーターはダンプ全体をメモリに保持しません。ファイルを範囲ごとに 2 回読み、読みながらスクリプトを書き出します。数 GB のダンプも、ブラウザ、デスクトップアプリ、コマンドラインで変換できます。

### どのバージョンのダンプに対応していますか?

MySQL 5.5 から 9、MariaDB 10.3 から 12、PostgreSQL 10 以降、SQL Server 2017 以降、SQLite 3.0 以降、Oracle 11g 以降です。スクリプトを読み込めるバージョンは各組み合わせのページに記載しています。

### 実行中のデータベースサーバーは必要ですか?

いいえ。コンバーターはダンプファイルを直接読むので、変換元のデータベースを動かす必要はありません。スクリプトは psql、mysql、sqlcmd など、変換先の標準クライアントで読み込めます。

### 変換されないものは?

ビュー、トリガー、ストアドプロシージャ、関数、イベントは各データベース独自の言語で書かれるため、代わりにレポートに名前で記載します。テーブル、キー、インデックス、行はすべてスクリプトに入ります。

### スクリプトをデータベースに直接読み込めますか?

デスクトップアプリと intosql load コマンドで、SQLite には無料で、PostgreSQL、MySQL、MariaDB には IntoSQL Pro で直接書き込めます。SQL Server と Oracle では、sqlcmd か sqlplus でスクリプトを実行してください。
