【2015/2/13記事改訂】
DBMotoではAmazon Wev Service(以下AWS)へのレプリケーションも可能です。AWSの中では仮想マシン管理のAmazon EC2とDB管理のAmazon RDSの両方に対応しています。
●Amazon EC2
Amazon EC2は仮想マシンでの管理となるため、VM上にデータベースをインストールすることで、DBMotoがサポートするすべてのDBにてレプリケーション可能です。
対応データベース一覧はこちら
●Amazon RDS
Amazon RDSで使用できるデータベースは下記の3つです。DBMotoはいずれもサポートしております。
・Oracle
・MySQL
・Microsoft SQL Server
DBMotoを利用することでDB2/AS400などの自社データベースからもこの3種類のAmazon RDSデータベースへ災害目的・移行目的・AWSサービスへのデータ連携目的でレプリケーションすることが可能です。
以下がAmazon RDSデータベースを接続先とした場合にどのレプリケーションで利用できるかを示す表です。
| レプリケーション種類 | Oracle | MySQL | MS SQL Server |
| リフレッシュ (ソース、ターゲット) |
○ | ○ | ○ |
| ミラーリング (ソース) |
○ | ○ トリガー使用 |
○ トリガー使用 |
| ミラーリング (ターゲット) |
○ | ○ | ○ |
| シンクロナイゼーション | ○ | ○ トリガー使用 |
○ トリガー使用 |
片方向のミラーリング(ソース)や双方向シンクロナイゼーションではトランザクションログを参照する必要があり、通常はOracle RedoログやMS SQL Serverのディストリビュータを利用してレプリケーションを行っています。
Amazon RDS for OracleではALTER TABLEコマンドが実行できないため、DBMoto画面からサプリメンタルロギングが設定できません。
代わりに、PL/SQLコマンドが用意されていますので、そちらを手動で実行していただければ設定可能です。詳しくは下記弊社ブログ記事をご覧ください。
DBMotoレプリケーションに必要なOracleユーザ権限
しかし、Amazon RDS for MS SQL ServerおよびMySQLでは、使用できる権限が足りないためこの機能が使用できません。そのため、ミラーリング(ソース)やシンクロナイゼーションを行うためには、DBMotoが独自に作成するテーブル、トリガーを利用したログを使用します。
※Amazon EC2に関しては権限の制約がないため、DBMotoがサポートするすべてのDB・レプリケーションモードが使用可能です。
MySQLの場合を例にレプリケーションを作成してみます。
まず、DBMotoからAmazon RDSへ接続できるようDB Security GroupでIPアドレスを許可します。




RSSフィードを取得する
VMware / Hyper-VからAWSクラウドへ 簡単レプリケーション、移行、データ保護にはZerto Virtual Replication (ゼルトバーチャルレプリケーション)が有用です。