DBMotoはMicrosoft Azure SQL Databaseとのリアルタイムレプリケーションに対応しています。
オンプレミスのDBからAzure SQLへ簡単に移行・連携することが可能です。
●Azure SQL Databaseの構築
Azureへログインし、左メニューからSQLデータベースを選択し、新規でDBを作成します。
データベース名やパフォーマンスレベル、照合順序などを設定します。
照合順序はSQL Serverの標準と同様のJapanese_CI_ASを選択しました。
DBMotoマシンからAzureへ接続するためにDBMotoマシンからアクセスして「このIPアドレス用にMicrosoft Azureファイアウォールルールを設定する」をクリックし、接続を許可します。もしくは他マシンからアクセスしてDBMotoマシンのIPアドレスを許可します。
また、DBMotoから接続する際の接続先サーバのホストをメモしておきます。
実際にAzureへの接続を確認するため、SQL Server用のManagement Studioを使用して接続します。
●DBMotoでの設定
DBMotoからAzureへ接続する際に、データベースは「Microsoft Azure SQL Database」を選択します。
接続ドライバは.NET Framework内蔵のSQL Clientを使用するため別途準備は不要です。
Azureのホスト、ユーザ名、パスワード、DB名を入力して接続を確認します。
今回はオンプレミスのOracleからAzure SQL Databaseへレプリケーションすることを例に、Oracleのテーブル情報を元にAzure上にテーブルを作成します。
このように複製元のOracleのテーブル構成を元にAzure用に適切なデータタイプ等が自動選定されます。手動でも変更可能です。
あとはレプリケーションジョブを作成してレプリケーションの準備は完了です。
●DBMotoでのレプリケーション検証
まずはデータの確認です。複製元のOracleは下記のデータとなっています。
続いてAzureのデータの確認です。先ほどDBMotoからテーブルを作成したのみですので空っぽです。
DBMotoのレプリケーションサービスを開始し、まずは全件リフレッシュが実行されます。
下記のようにAzure上に正しく全レコードがレプリケーションされていることを確認します。
続いて差分レプリケーション確認のため、Oracle上で意図的にデータの更新をかけます。
※Oracle SQL Developerで更新しました。
その後、今度はSQL Server Management Studioにて正しく差分のデータが反映されていることを確認しました。
このようにオンプレミスDBからAzure SQL Databaseへ簡単にレプリケーションによる移行・連携が可能です。
またAzureから他DBへのレプリケーションにも対応しています。その際はレプリケーション対象のテーブルにトリガーを作成して差分レプリケーションを行うことも可能です。
関連したトピックス
- SAP HANA から他RDBからのレプリケーション(クライアント準備編、AWSを利用)
- Azureのデプロイメントオプションで適切なSQL Serverを選択する方法
- Teradataを構築してDBMotoでOracle等からTeradataへのリアルタイム・レプリケーション
- SQL ServerとMySQLリレーショナルデータベースの比較
- Azure Database for PostgreSQLを使い始めるにあたって
- リアルタイムDBレプリケーションツールの最新版DBMoto8完全日本語版をリリースしました。
- SAP HANA で、他RDBからのレプリケーション(AWSとDBMotoで検証編)
- 接続ドライバについて【リアルタイムレプリケーションツールDBMoto】
- Oracle用SQL開発ツール「SQL Developer」は検証開発用に最適
- メインフレームDB2への各種アクセス手法 [ DB2 Connectivityを活用して]