マイグレーションを行うとき、よく出くわすのが RDBMS です。私もインフラをやっていてこれらの移行を行う機会が結構あるのですが基本的にエクスポート・インポートツールが揃っているので移行はしやすいと考えられます。
今回は私の知っている MySQL、PostgreSQL、Oracle について触れています。これらの RDBMS ではそれぞれ mysqldump(エクスポート)、mysql(インポート)、pg_dump(エクスポート)、psql(インポート)、exp(エクスポート)、imp(エクスポート)のようにある程度のエクスポート・インポートツールが存在します。
DB のマイグレーションツール整理
「MySQL から PostgreSQL への移行」、「PostgreSQL から Oracle への移行」等マイグレーションは様々存在し、何をどうやったら移行ができるのか分からなくなるときがあります。
そこで今回はこれらを整理してみました。
イメージ中の「加工」と記載しているものは手動でエクスポートした SQL 文などを修正する作業を指しており(難)はその加工作業が難しいことを意味しています。
また、これ以外にも RDBMS の場合、忘れてはならない「トリガー」「シーケンス」「ストアドプロシージャ」も検討しておく必要があります。
「トリガー」や「ストアドプロシージャ」等は事前に移行が可能である為、移行当日に実施は必要ないかもしれませんが、「シーケンス」はおそらくツール等を作ってマイグレーション元とマイグレーション先を合わせる必要が出てくるでしょう。