最近オンプレミスで動いている環境をAWSに移行させることをやってます。
その中でデータ(MySQL)をどう移行させるかで、
①データ容量自体はそこまで大きくない
②レプリケーションを簡単に行いたい
てなこともあり「AWS Database Migration Service」(以下、DMSと省略)を検討中です。
結構前からあるサービスですね。
DMSのイメージとしてはこんな感じ
※画像はBlackBeltから持ってきました
DMSを使用する際に必要なこととして、
・データベース側
①バイナリログの有効化
②バイナリログのフォーマット指定
・DMS側
①DMSインスタンスの作成
②転送元と転送先のエンドポイントの作成
③タスクの作成
※バイナリログの有効かについてはAWSのRDSを使用している場合は、バックアップの有効期間を1日以上にすると出来ました。
適当なデータを作成してやってみたところ、データの移行はできたが外部キーの移行が出来ていない..。
AWSの公式サイトでちょこちょこ見てみると...。
なるほど...。
上記のような場合は「AWS Schema Conversion Tool」を使用すると良いらしい。
ただ、バージョンが古い場合は利用が出来ないので注意
対応バージョンは以下の通り
※画像はBlackBeltから持ってきました
今回自分が行ったものはバージョン対象外であったため、先にデータ値以外のスキーマ情報をsqldumpコマンドでRDSにダンプさせた。
....LOBの移行がうまく出来ない。
うーん、なんでだろう...。