AWSのデータベース移行について解説します【データベース移行手順】

AWSのデータベース移行について解説します【データベース移行手順】
オンプレミス環境で運用しているデータベースは重要な要素となります。データベースの可用性などを維持するためには時間や労力、そしてコストがかかるケースが多くあります。

そのため、AWSのRDSを利用することでデータベースの運用面で負担を軽くしたいと検討するケースがあります。しかし、データベースの移行は移行元(ソースデータベース)・移行先(ターゲットデータベース)に関わらず、複雑で大きな負担となるケースが多くあります。

そこでAWSでは、そのデータベースの移行を円滑に行うためのツールが用意されています。それが、AWS Database Migration Service(DMS)です。


AWS Database Migration Service(DMS)

AWS Database Migration Service(DMS)
AWSへのデータベース移行を短期間で円滑に行う移行支援サービスです。オンプレミス→AWS、AWS→オンプレミス、どちらにも対応しています。同種(同じエンジンの2つのデータベース間)そして異種(違うエンジンを持つ2つのデータベース)の移行をサポートしています。


DMSのメリット


DMSは簡単な操作でデータベース移行を進めることができます。また、データベース移行時のダウンタイムを最小限にするために継続的にレプリケーションを行い、データベースが使える状態を保ちながら移行を進めることができます。

サポートをしているデータベースが多く、一般的によく利用されているデータベース全てに対応が可能です。

データの冗長性をレプリケーションによって確保している他、一時的に移行がストップしてしまった場合にも、自動的に再起動され移行が継続されます。そしてサービス利用が低コストであることも大きなメリットのひとつです。


DMSで出来ること


DMSを利用して出来ることは以下の通りになっています。


・同種間のデータベース移行
・異種間のデータベース移行(SCTも同時に利用)
・開発・テスト用ににデータベース移行
・データベースの統合
・継続的なレプリケーション


異種間のデータベース移行は大きく2つのステップを通して移行をします。
1.SCTで移行先(ターゲットデータベース)に適用出来るようにスキーマとコードを変換
2.DMSで移行

データベースの統合では、いくつかのデータベースを一つのデータベースにまとめることができます。ソースデータベースは、同種・異種関係なく利用することができます。

その他には、暗号化されたデータを移行することもでき、ターゲット(移行先)でも暗号化を設定しておくことでセキュリティ面は確保されます。


DMSの基本的な仕組み


DMSは、4つの要素で構成されます。


・Source Endpoint(ソース エンドポイント)
・Replication Instance (レプリケーション インスタンス)
・Replication Task(レプリケーション タスク)
・Target Endpoint(ターゲット エンドポイント)


上から順にデータが通過していくイメージになります。レプリケーションを行いながら、データを移行先へと送ります。


DMSで移行する手順


標準的なデータベースの移行の手順は以下のようになります。


・ターゲットデータベースの作成
・データベーススキーマの移行
・データレプリケーションプロセスの設定
・最大負荷でプロセスを開始して、その後変更データをキャプチャし適用する。
・ターゲットデータベースの内容がソースデータベースに追いついたら、実稼働環境を新し いデータベースに切り替えて終了する。


データベースの移行状況は、AWSのマネジメントコンソールで確認することができます。


AWS Schema Conversion Tool (AWS SCT)

AWS Schema Conversion Tool
異種間のデータベース移行の時に、移行元(ソースデータベース)のスキーマとコードを移行先(ターゲットデータベース)のスキーマとコードへ変換するサービスです。STCは連邦情報処理標準 (FIPS) などの業界標準をサポートしています。コンプライアンス面にも配慮がされています。

STCを使用するには、ソースデータマシン上にインストールが必要です。また、STCを利用するとソースデータベースからターゲットデータベースに移行が出来るオブジェクトとできないオブジェクトをレポートとして出力をしてくれます。ソースデータベースの中でも移行をする対象を決めやすくなります。


データ移行を円滑に行うポイント


データベースの移行は、データの量が多くなればなるほど複雑になります。事前に出来る準備をしっかりしておくことで円滑に行うことが出来るようになります。


情報を洗い出す




・情報セキュリティポリシーの確認
・移行元データベースの調査
・移行先データベースの選定
・移行先データベースのRDB(リレーショナルデータベース)エンジンの選定
・移行の方法(段階移行など)


が重要なポイントとされています。


検証環境を整える


実際にデータベース移行の検証を行うことで一つ一つの工程を確認していきましょう。


・必要な初期設定
・実際に移行にかかる時間
・移行したいデータがDMSのみで可能かどうか
・エラーの可能性がありそうなポイントや転送時に注意したいこと
・レプリケーションインスタンスとストレージサイズは適切か?
・ネットワーク帯域は十分か?


他にも、検証をしておきたいポイントがあると思いますがあげたポイントの中でも本番環境でのネットワークへの負荷などにも気をつけておくと良いです。移行がスムーズにいかなかったことから、接続方法を変更することで対処したケースがあります。移行の時に課題に上がるポイントでもある、ダウンタイムについても注意をしておきましょう。


DMS/STCの制約条件や使い方を理解する。


DMSでできる範囲をしっかりと把握しておくことで、実際の環境ではできないと判断されることを避けることができます。それと同時に、使い方などもきちんと確認しておきましょう。さらにAWSドキュメントの中にあるドキュメントや実際の手順に関するチュートリアルなども参考にしておくことで、問題なくデータ移行を進めることができます。


データ移行が正しく行われたかどうかを確認する方法を決めておく。


正常な移行が行われているかどうかを判断することが大切になります。これは、いくつかの方法が考えられますが、最適な確認方法は状況による判断となります。本番環境での移行前に確認する内容をしっかりときめておくことがポイントになります。


・レコード件数での確認
・ログの確認(異常がないかどうか)
・ランダムで選んだレコードの整合性で判断をする


などが考えられます。


AWSへの移行を含めてDMSは13万件の実績があります。操作手順は簡単で利用がしやすいサービスだと思います。データを損傷することがなく移行を済ませることができる安全性や、ダウンタイムが最小限で済むことなどメリットとなることが多くあります。

DMSを円滑に利用するためには、ソースデータベースのデータを調査しておくことが大切です。移行をしたいデータを明確にしていく作業の中で、SCTを利用して移行できないデータを洗い出していくことでデータを選択していくことが不可欠です。

本番環境に近い環境での検証を通して、検証していく内容を洗い出していくこともトラブルを避けるためには大切なポイントとなります。検証環境では、気にしていなかったけれど本番環境で思わぬトラブルが怒らないように気をつけなければいけません。

データベース移行で課題になるダウンタイムについても、DMSではレプリケーションを行うことで損失や中断などにも対応できるようになっていますが、環境やデータの状況では、ゼロではないかもしれません。事前に許容範囲を設定するなどの対応が必要になるケースもあります。

また、リアルタイムでのオンプレミス環境との連携が必要となるケースもあります。DMSの利用ケースは様々ありますが、オンプレミス環境からのデータベース移行の場合は外部のコンサルタントに依頼をしてみるのも良いかもしれません。


    <著者情報>
  • コンテンツ企画・制作編集部
  • STRA株式会社
  •   -  http://stra.co.jp/
  • コンテンツ企画・制作編集部(監修:石岡章司)
  • STRA株式会社のコンテンツ企画・制作編集部ではフリーエンジニアの皆様に向けたお役立ち情報や業務委託案件のご紹介、人材情報のご提供のほか、ホームページ制作を検討中の方に向けたお役立ち情報を日々お届けしています。

「あなたのチカラは、社会のチカラ」をキャッチフレーズにエンジニアの皆様と企業とを結びつけるSES事業を行っています

STRA株式会社のSES事業は、エンジニアの皆様と各プロジェクトをオープンしている企業とを結びつける活動を行っています。取り扱い案件は多数!「OS・仮想化・サーバーエンジニア案件」や「データベースエンジニア案件」、「コンサルタント・PM・PMO案件」、「ネットワークエンジニア案件」はもちろん、「一般事務業務案件」など、多数のお取引実績があります。開発系からコンサルタント系まで、日々当社に寄せられてくる求人情報は100を超えています。ぜひあなたのお力をお貸しください!

すぐにお仕事情報が欲しい方は
こちらよりエントリー!

STRAが全力でお応えします。
どんなことでもお気軽にご相談ください。

お問い合わせ種別必須
ご担当者名必須
御社名任意
メールアドレス必須
お電話任意
お問い合わせ内容必須
以下のご利用規約・プライバシーポリシーをご一読、ご同意の上送信してください。
ご利用規約
第1条 規約

本規約は、STRA株式会社(以下「当社」という。)が運営する公式サイト『http://stra.co.jp』(以下、「本ウェブサイト」という。提供される全てのサービスに適用されます。

第2条 サービス

本サービスとは、本ウェブサイトを通じた求職・求人、及び、それに関連するサービスを利用目的とするサービスとします。
ユーザとは、本サービスを利用する個人とします。
本サービスを利用する者は、本規約の内容をすべて承認したものとします。
当社および当社のサービス利用企業は、本サービスを提供する際に、ユーザに対し、Eメールやダイレクトメール、及び郵便、電話、ファックスによって連絡させていただくことがあります。

第3条 禁止行為

ユーザは、次の行為をすることはできません。
登録に際し、虚偽の情報を提供すること。
当社、他のユーザ又は第三者の著作権等知的財産権の侵害に当たる行為。
当社、他のユーザ、又第三者の財産権やプライバシーに関する権利、その他の権利又は利益を侵害する行為。
本サービスで得た情報を、本サービスの利用目的の範囲を超え第三者に譲渡し、又は営利を目的とした情報提供活動に活用すること。
コンピューター・ウィルスや有害なコンピューター・プログラムを含む情報を送信する行為。
本サービスの運営の妨げの可能性がある行為。
本サービスを利用する他のユーザ又第三者を誹謗中傷していると見られる行為。
公序良俗に反すると思われる行為。
法令に反する全ての行為。
その他、当社が不適切と判断できる全ての行為。

第4条 責任

ユーザは自らの意思によって本サービスを利用します。
ユーザーは、自ら登録した情報に関しては、一切の責任を負うものとします。
登録情報は、本サービスを利用するために必要な範囲内で、常にユーザが責任をもって利用目的に沿い、正確、最新に保つものとします。

第5条 登録情報の削除

ユーザによる情報の送信、提供等の行為が本規約第2条に規定された行為に該当する可能性があると当社が判断した場合には、ユーザ通知することなく、当該情報の全部又は一部について、削除、送信停止その他必要と認める措置を講じることとします。
ユーザが本規約の規定に違反した場合には、ユーザに通知することなく、ユーザの登録を抹消できるものとします。

第6条 登録情報の利用

ユーザは、本サービスにおいて提供した情報のうち、個人を特定する情報を以外の情報を、当社が日本の国内外で無償にて使用する権利を許諾したものとみなします。また、ユーザは著作者人格権を行使しないものとします。

第7条(個人情報の取り扱い)

本サービスにおける個人情報の取り扱いについては、「個人情報保護方針」をご確認ください。ユーザは、本サービスを利用する場合には、当該個人情報保護方針を承認したものとさせていただきます。

第8条 サービスの変更

当社は、本サービスの運営を良好に保つため、ユーザに対して事前の通知なく、本サービスの内容を変更することがあり、ユーザはそれに対して異議を申し立てないものとします。

第9条 サービスの停止

当社は、以下のいずれかに該当する事由が発生した場合、ユーザへの事前の通知及び承諾を要することなく、本サービスの停止または終了を行うことができます。
本サービス運営のためのシステム(以下「システム」という。)の保守、更新等を定期的、若しくは緊急に行う必要性がある場合。
通常講ずるべきウィルス対策では防止できない不可抗力により、本サービスの提供が困難な場合。
突発的なシステムの故障等が発生して、サービスの運営が困難な場合。
その他、不測の事態により、本サービスの提供が困難であると当社が判断した場合。

第10条 ユーザによる登録の削除

ユーザは、自らの意思により本サービスへの登録情報を削除できます。

第11条 免責

当社は、企業情報等の第三者の情報、広告その他第三者により提供される情報、ユーザ等が本サービスに登録し掲載する情報等に関し、内容の正確性について保証しません。
ユーザの本サービスへの登録及び本サービスの利用から生じる一切の損害に関して、当社は責任を負わないものとさせていただきます。
当社による本サービスの提供の中断、停止、利用不能又は変更、ユーザ情報の削除又は消失、ユーザの登録の抹消、本サービスの利用によるデータの消失又は機器の故障若しくは損傷、その他本サービスに関連してユーザが被った損害につき、一切の責任を負わないものとします。
本ウェブサイトから他のウェブサイトへのリンク又は他のウェブサイトから本ウェブサイトへのリンクが提供されている場合でも、本ウェブサイト以外のウェブサイト及びそこから得られる情報について、当社は一切の責任を負わないものとします。
本サービスは、就職・転職活動の成功を保証するものではありません。
当社の責任を免責する本規約の条項が消費者契約法等の法令に反することによって無効となる場合や、その他の理由によって当社がユーザに対して損害賠償責任を負うべき場合、当社の賠償責任は、ユーザに生じた直接かつ通常の損害の範囲に限るものとさせていただきます。

第12条 規約変更

当社は、ユーザの承諾を得ることなく、本規約を随時変更することができます。

第13条 規約譲渡

ユーザは、当社の書面による事前の承諾なく、本規約に基づく権利又は義務につき、第三者に対し、譲渡、移転、担保設定、その他の処分ができません。
当社は本サービスにかかる事業を他社に譲渡した場合、当該事業譲渡に伴い本規約に基づく権利及び義務並びにユーザの登録情報、その他の顧客情報を当該事業譲渡の譲受人に譲渡することができ、ユーザはその譲渡につき予め同意したものとします。また、会社分割やその他事業が移転する状況を含むものとします。

第14条 損害賠償義務

ユーザが本規約に違反し、当社に対し損害を与えた場合、ユーザは当社に対し、損害賠償義務を負担するものとします。

第15条 準拠法及び管轄裁判所

本規約の準拠法は日本法とし、本規約に関する紛争については、当社の本社所在地を管轄する地方裁判所または簡易裁判所を第1審の専属的合意管轄裁判所とします。

第16条 実施

本規約は2013年12月24日から実施するものとします。

プライバシーポリシー

STRA株式会社は、個人のプライバシーを扱うサービス業の特性を踏まえ、個人情報の取扱いに細心の注意を払っております。自主規制基準を遵守の上、個人情報の取扱いに関する基本方針を以下のように定め、個人情報の漏洩などを防止し、取扱う個人情報の保護に努めます。

STRA株式会社は、個人情報の取扱いに関する自社の規範を遵守します。

STRA株式会社は、事業の内容及び規模を考慮した適切な個人情報の取得、利用及び提供を行います。本サービスをご利用するお客様の個人情報は、STRA株式会社が本サービスを提供するために適切な場合に限り使用されます。それには必要な範囲を超えた個人情報の取扱いを行わないこと及びそのための措置を講じることを含みます。

STRA株式会社は、本人の同意がある場合又は法令に基づく場合を除き、個人情報を第三者に提供することはありません。

STRA株式会社は、個人情報の漏洩、滅失又は紛失の防止及び是正のための措置を講じます。

STRA株式会社では、個人情報保護に関する管理の体制と仕組みについて継続的改善を実施します。

STRA株式会社では、お預かりした個人情報は目的以外には利用しません。


STRAのその他のサービス

STRA株式会社コーポレートサイト STRA株式会社stra.co.jp/ WEB事業 WEB事業stra.co.jp/web
システムエンジニアリングサービス事業 SES事業stra.co.jp/ses WEB-SERVICE事業 WEBパッケージ事業stra.co.jp/web-service
AWS事業 AWS事業stra.co.jp/aws AWS試験対策問題 おまかせスマホ最適化
stra.co.jp/campaign/responsive/
AWS試験対策問題 AWS試験対策問題
SES事業サイト内特設ページ
SECURE事業 SECURE事業stra.co.jp/secure
あなたのチカラは、社会のチカラ|STRA株式会社|Copyright © 2013 STRA Co., Ltd. ALL RIGHTS RESERVED.
PAGE TOP ↑