スポンサーリンク

AWS Database Migration Serviceを利用したデータ移行手順

先日、AWSのDatabase Migration Service(以下DMS)を利用したデータ移行の際にINDEXやAUTO_INCREMENTなどのスキーマ情報が移行されないという内容の投稿をしましたが、この件について設定を見直したところ移行前にデータベースのスキーマ情報を移行し、少し設定を変更したDMSタスクを作成することで可能であることがわかりました。今回はDMSを利用したEC2(MySQL)→RDS(MySQL)の手順についてまとめます。なお、前回の更新でAWS Schema Conversion Toolを利用した手順をまとめると書きましたが、思ったより使いこなすのが難しかったりMySQL→MySQLの移行の際は必ずしも必要でなかったので今回は使いませんでした。
今回はこれまた先日作成したばっかりの「MD5の変換/逆変換ツール」で使用中のデータベースをAWSのRDSに移行する手順をまとめました。

1.データ移行元(ソースDB)、データ移行先(ターゲットDB)について
ソースDBはEC2のt2.nanoインスタンスにMySQL5.6をインストールして使用しています。バージョンは5.6.37です。DMSを使用したデータ移行についてレプリケーションを有効にした移行を行う場合、ソースDBとターゲットDBはそれぞれMySQLのバージョンが5.6以上である必要があります。今回移行するデータベースは毎分バッチ処理により100件のデータがインサートされる仕組みを構築しているためレプリケーションを有効にした移行手順を作成します。
ターゲットDBはRDSのMySQLを使用します。RDSのインスタンスはまだ作成していないので、まずは作成およびセットアップについて手順をまとめます。

2.ターゲットDBのRDSを作成する
サービスよりRDSの管理画面に入り「DBインスタンスの起動」ボタンをクリック。

エンジンの選択画面ではMySQLを選択。

今回は本番稼動用を選択。

MySQLのバージョンは5.6.35を選択。それ以外の仕様は最小の構成で作成しました。
DBインスタンスの識別子は後にDBに接続する際のエンドポイントの一部になります。マスタユーザの名前、パスワードはソースDBで稼働中のMySQLと同一の設定としました。

VPCはEC2のインスタンスと同一にしました。EC2とRDSを同一のVPC内に構築するためパブリックアクセスは「いいえ」を選択しました。
データベースの設定は移行元と同じような設定となるようにしました。
バックアップは0日とすることで自動バックアップが無効となります。今回はデータ移行のみ行いたいのでバックアップは無効化しました。
その他適当に設定を行いインスタンスの作成を行います。

RDSインスタンスの作成には多少時間が掛かるため少し時間をおいてDBインスタンスの表示を行います。

DBインスタンスの情報では先ほどウィザードで設定した情報の他、外部からRDSに接続する際に必要となるエンドポイントの情報が表示されています。ひとまずこれで移行先のRDSの作成は完了です。

タイトルとURLをコピーしました