このトピックでは、data Transmission Service (DTS) の物理ゲートウェイベースの移行機能を使用して、自己管理型SQL ServerデータベースからApsaraDB RDS for SQL Serverインスタンスにデータを移行する方法について説明します。 Elastic Compute Service (ECS) インスタンス、データセンター、またはサードパーティのクラウドサーバーにある自己管理型SQL Serverデータベースからデータを移行できます。 物理ゲートウェイベースの移行機能は、物理プロトコルゲートウェイを使用してRDSインスタンスに接続します。 この機能を使用すると、ダウンタイムなしで高速にデータをRDSインスタンスに簡単かつ効率的に移行できます。 この機能はすべてのシナリオに適しています。
シナリオ
自己管理型SQL serverデータベースが存在するサーバーがインターネットにアクセスできる場合は、このトピックを参照して、自己管理型SQL ServerデータベースからRDSインスタンスにデータを移行できます。
自己管理型SQL serverデータベースが存在するサーバーがインターネットにアクセスできないが、ネットワーク通信に要塞ホストを使用している場合、「要塞ホスト上の物理ゲートウェイを使用して、自己管理型SQL ServerデータベースからApsaraDB RDS for SQL Serverインスタンスへのデータの移行」の手順に従って、自己管理型SQL ServerデータベースからRDSインスタンスにデータを移行できます。
前提条件
自己管理型SQL Serverデータベースは、次の要件を満たしています。
自己管理型SQL Serverデータベースは、SQL Server 2019、SQL Server 2017、SQL Server 2016、SQL Server 2014、SQL Server 2012、SQL Server 2008 R2、またはSQL Server 2005を実行します。
説明自己管理型SQL Serverデータベースは、ECSインスタンス、データセンター、またはサードパーティのクラウドサーバーにあります。 自己管理型SQL ServerデータベースをRDSインスタンスにすることはできません。
データベースバックアップ (DBS) の物理プロトコルゲートウェイは、自己管理型SQL serverデータベースが存在するサーバーにインストールされます。 詳細については、「付録: 物理プロトコルゲートウェイの作成」をご参照ください。
説明RDSインスタンスと同じリージョンに物理プロトコルゲートウェイをインストールする必要があります。
RDSインスタンスは次の要件を満たしています。
RDSインスタンスは、SQL Server 2019、SQL Server 2017、SQL Server 2016、 SQL Server 2012、またはSQL Server 2008 R2
RDSインスタンスは、自己管理型SQL Serverデータベースと同じメジャーエンジンバージョンまたはそれ以降のメジャーエンジンバージョンを実行します。
Alibaba Cloudアカウントを使用すると、次の権限が付与されます。
AccessKeyペアが作成され、AccessKey IDとAccessKey secretが取得されます。 AccessKeyペアは、バックアップゲートウェイからDBSコンソールに登録またはログインするときのID認証に使用されます。 詳細については、「AccessKeyペアの取得」をご参照ください。
Resource Access Management (RAM) ユーザーを使用してバックアップゲートウェイを追加する場合は、AliyunDBSFullAccess権限を取得します。 詳細については、「RAM ユーザーへの権限の付与」をご参照ください。
説明デフォルトでは、DBSを有効化すると、前述の権限がAlibaba Cloudアカウントに付与されます。
バックアップゲートウェイを追加すると、Alibaba Cloudアカウントに属するすべてのRAMユーザーが、DBSコンソールでバックアップゲートウェイを使用できるようになります。
物理ゲートウェイベースの移行と論理データ移行の比較
項目 | 物理プロトコルゲートウェイベースの移行 | 論理データ移行 |
移行の原則 | ネイティブ物理バックアッププロトコルは、データをデータブロックとして宛先データベースに書き込むために使用されます。 | JDBCプロトコルは、SQL文を取得し、文を宛先データベースに書き込むために使用されます。 |
オペレーティングシステム | WindowsのSQL Serverのみがサポートされています。 デスクトップオペレーティングシステムのバージョンは、Windows XPより前にすることはできません。 サーバーオペレーティングシステムのバージョンをWindows server 2003より前にすることはできません。 | 無制限 |
Deployment | 物理プロトコルゲートウェイは、データベースが存在するサーバーにインストールする必要があります。 | ゲートウェイをインストールする必要はありません。 |
ネットワーク接続 | データベースが存在するサーバーは、Alibaba Cloudのネットワークに接続できます。 説明 自己管理型SQL serverデータベースが存在するサーバーがインターネットにアクセスできないが、ネットワーク通信に要塞ホストを使用している場合、「要塞ホストの物理ゲートウェイを使用して、自己管理型SQL ServerデータベースからApsaraDB RDS for SQL Serverインスタンスにデータを移行する」の手順に従って、自己管理型SQL ServerデータベースからRDSインスタンスにデータを移行できます。 | データベースに接続するポートを有効にするか、専用回線ベースの接続を確立する必要があります。 |
ソースデータベースの権限 | sysadminロールが必要です。 | スキーマの移行と完全移行には、SELECT権限が必要です。 増分移行にはsysadmin権限が必要です。 詳細については、「データベースアカウントに必要な権限」をご参照ください。 |
宛先データベースのバージョン | ターゲットデータベースのエンジンバージョンは、ソースデータベースのエンジンバージョンと同じかそれ以降である必要があります。 | 移行先データベースのエンジンバージョンよりも後または前のエンジンバージョンを実行する移行元データベースからデータを移行できます。 |
宛先データベースのアクセシビリティ | データ移行中、移行先データベースにアクセスできません。 | データ移行中に、ターゲットデータベースからデータを読み書きできます。 |
ソースデータベースから移行できるテーブルの制限 | メモリテーブルは移行できません。 FileStreamおよびFileTables型のフィールドは移行できません。 | 詳細については、「自己管理型SQL ServerデータベースからApsaraDB RDS For SQL Serverインスタンスへのデータの移行」をご参照ください。 |
移行シナリオ | データは、自己管理データベースからクラウドに移行できます。 説明 自己管理型SQL Serverデータベースは、ECSインスタンス、データセンター、またはサードパーティのクラウドサーバーに存在できます。 | データは、自己管理データベースまたはクラウドホストデータベースからクラウドに移行できます。 |
移行効率 | 高い。 | ミディアム。 |
データ処理の抽出、変換、ロード (ETL) | サポートされていません。 | サポートされています。 |
テーブルレベルのデータフィルタリング | サポートされていません。 | サポートされています。 |
データベースレベルのデータフィルタリング | サポートされています。 | サポートされています。 |
説明
項目 | 移行の説明 |
ソースデータベースの制限 |
|
データベースエンジンのバージョン | ターゲットデータベースのエンジンバージョンは、ソースデータベースのエンジンバージョンと同じかそれ以降である必要があります。
説明 各SQL Serverバージョンでサポートされている移行の種類の詳細については、「各SQL Serverバージョンでサポートされている移行の種類」をご参照ください。 |
インメモリデータベースとミラーリング技術 | SQL Serverのメモリ内オンライントランザクション処理 (OLTP) 機能とミラーリング機能は、互いに互換性がありません。 ソースデータベースのメモリ内データベースを有効にする場合、ターゲットデータベースがRDS High-availability Editionを実行するRDSインスタンスに存在しないことを確認する必要があります。 |
データベースの数 | RDSインスタンスに一度に移行できるデータベースの数は、RDSインスタンスのインスタンスタイプによって異なります。 詳細については、「データベースの最大数」をご参照ください。 |
その他の制限 |
|
使用上の注意
データの移行中に、自己管理型SQL Serverデータベースにデータを増分的に書き込むことができます。 データの不整合を防ぐため、ワークロードの切り替え中は、自己管理型SQL Serverデータベースにデータを書き込まないことをお勧めします。
増分移行中、RDSインスタンスは一時的に使用できなくなります。 増分移行タスクが完了するまで待ち、ワークロードがRDSインスタンスに切り替えられた後、RDSインスタンスを使用します。
各SQL Serverバージョンでサポートされている移行タイプ
ソースデータベースのエンジンバージョン | RDSインスタンスのエンジンバージョン |
SQL Server Developer、SQL Server Standard、SQL Server Web、およびSQL Server Express | SQL Serverエンタープライズ |
SQL Server Standard、SQL Server Web、およびSQL Server Express | SQL Serverスタンダード |
SQL Server WebおよびSQL Server Express | SQL Server Web |
手順
[データ移行タスク] ページに移動します。
データ管理 (DMS) コンソール にログインします。
上部のナビゲーションバーで、[DTS] をクリックします。
左側のナビゲーションウィンドウで、 を選択します。
説明操作は、DMSコンソールのモードとレイアウトによって異なります。 詳細については、「シンプルモード」および「DMSコンソールのレイアウトとスタイルのカスタマイズ」をご参照ください。
新しいDTSコンソールのデータ移行タスクページに行くこともできます。
[データ移行タスク] の横にあるドロップダウンリストから、データ移行インスタンスが存在するリージョンを選択します。
説明新しいDTSコンソールを使用する場合は、左上隅にデータ移行インスタンスが存在するリージョンを選択する必要があります。
[タスクの作成] をクリックします。 [データ同期タスクの作成] ウィザードで、ソースデータベースとターゲットデータベースを設定します。 下表にパラメーターを示します。
警告ソースデータベースとターゲットデータベースを設定した後、ページの上部に表示される制限を読むことを推奨します。 そうしないと、タスクが失敗したり、データの不一致が発生します。
セクション
パラメーター
説明
非該当
タスク名
タスクの名前。 DTSはタスクに名前を自動的に割り当てます。 タスクを簡単に識別できるように、わかりやすい名前を指定することをお勧めします。 一意のタスク名を指定する必要はありません。
ソースデータベース
既存のDMSデータベースインスタンスの選択
使用するデータベースインスタンス。 ビジネス要件に基づいて、既存のインスタンスを使用するかどうかを選択できます。
既存のインスタンスを選択すると、DTSはデータベースのパラメーターを自動的に入力します。
既存のインスタンスを選択しない場合は、ソースデータベースのパラメーターを設定する必要があります。
データベースタイプ
データベースのデータベースエンジン。 [SQL Server] を選択します。
アクセス方法
アクセス方法。 [物理プロトコル] を選択します。
インスタンスリージョン
自己管理型SQL Serverデータベースが存在するリージョン。
物理プロトコルゲートウェイ (DBS Backup Gateway)
使用する物理プロトコルゲートウェイ。
説明物理プロトコルゲートウェイのインストール方法の詳細については、「付録: 物理プロトコルゲートウェイの作成」をご参照ください。
ドメイン名またはIP
。
デフォルト値: localhost。
ポート
自己管理型SQL Serverデータベースのポート番号。 デフォルト値: 1433
宛先データベース
既存のDMSデータベースインスタンスの選択
使用するインスタンス。 ビジネス要件に基づいて既存のインスタンスを使用できます。
既存のインスタンスを選択した場合、DTSはインスタンスのパラメーター設定を自動的に適用します。 対応するパラメーターを再度設定する必要はありません。
既存のインスタンスを選択しない場合は、次のパラメーターを設定する必要があります。
データベースタイプ
インスタンスのデータベースエンジン。 デフォルト値: SQL Server。
アクセス方法
アクセス方法。 デフォルト値: Alibaba Cloudインスタンス
インスタンスリージョン
RDSインスタンスが存在するリージョン。
インスタンスID
RDS インスタンスの ID
データベースアカウント
RDSインスタンスのアカウントのユーザー名。
説明RDSインスタンスのアカウントを作成し、そのアカウントに権限を付与する方法の詳細については、「特権アカウントまたは標準アカウントの作成」および「アカウントの権限の変更」をご参照ください。
データベースパスワード
RDSインスタンスのアカウントのパスワード。
クリック接続性をテストして続行.
では、DTSサーバーのCIDRブロックダイアログボックスで、接続性をテストして続行.
、ソースまたはターゲットデータベースがAlibaba Cloudデータベースインスタンス (ApsaraDB RDS for MySQL、ApsaraDB for MongoDBインスタンスなど) の場合、DTSは自動的にDTSサーバーのCIDRブロックをインスタンスのIPアドレスホワイトリストに追加します。 ソースデータベースまたはターゲットデータベースがElastic Compute Service (ECS) インスタンスでホストされている自己管理データベースの場合、DTSサーバーのCIDRブロックがECSインスタンスのセキュリティグループルールに自動的に追加されます。ECSインスタンスがデータベースにアクセスできることを確認する必要があります。 自己管理データベースが複数のECSインスタンスでホストされている場合、DTSサーバーのCIDRブロックを各ECSインスタンスのセキュリティグループルールに手動で追加する必要があります。 ソースデータベースまたはターゲットデータベースが、データセンターにデプロイされているか、サードパーティのクラウドサービスプロバイダーによって提供される自己管理データベースである場合、DTSサーバーのCIDRブロックをデータベースのIPアドレスホワイトリストに手動で追加して、DTSがデータベースにアクセスできるようにする必要があります。 詳細については、「DTSサーバーのCIDRブロックの追加」トピックの「DTSサーバーのCIDRブロック」セクションをご参照ください。
警告DTSサーバーのパブリックCIDRブロックがデータベースインスタンスのホワイトリストまたはECSインスタンスのセキュリティグループルールに自動的または手動で追加されると、セキュリティリスクが発生する可能性があります。 したがって、DTSを使用してデータを移行する前に、潜在的なリスクを理解して認識し、ユーザー名とパスワードのセキュリティの強化、公開されるポートの制限、API呼び出しの認証、ホワイトリストまたはセキュリティグループルールの定期的なチェック、CIDRブロックの禁止、またはExpress Connectを使用したデータベースインスタンスのDTSへの接続、VPNゲートウェイ、またはSmart Access Gateway。
タスクのオブジェクトを選択し、高度なパラメーターを設定します。
パラメーター
説明
タスクステージ
フルデータ移行のみを実行する場合は、[フルデータ移行] を選択します。 フルデータ移行はデフォルトで選択されています。
データ移行中のビジネスの継続性を確保するには、[フルデータ移行] および [増分データ移行] を選択します。
説明増分データ移行を選択しない場合、データの一貫性を確保するために、データ移行中にソースデータベースにデータを書き込まないことを推奨します。
ソースオブジェクト
[ソースオブジェクト] セクションから1つ以上のオブジェクトを選択します。 アイコンをクリックして、[選択済みオブジェクト] セクションにオブジェクトを追加します。
説明単一のデータベース、複数のデータベース、またはインスタンス全体を移行できます。
[選択済みオブジェクト]
移行するオブジェクト。
クリック次条: 詳細設定高度なパラメーターを設定します。
パラメーター
説明
Set Alerts
データ移行タスクのアラートを設定するかどうかを指定します。 タスクが失敗するか、移行の待ち時間が指定されたしきい値を超えると、アラート送信先は通知を受け取ります。 有効な値:
No: アラートを設定しません。
Yes: アラートを設定します。 この場合、アラートしきい値と アラート通知設定 詳細については、「DTSタスクの作成時のモニタリングとアラートの設定」をご参照ください。
失敗した接続の再試行時間
失敗した接続のリトライ時間範囲。 データ移行タスクの開始後にソースデータベースまたはターゲットデータベースの接続に失敗した場合、DTSは再試行時間範囲内ですぐに接続を再試行します。 有効な値: 10 ~ 1440 単位は分です。 デフォルト値: 720 パラメーターを30より大きい値に設定することを推奨します。 指定した再試行時間内にDTSがソースデータベースとターゲットデータベースに再接続された場合、DTSはデータ移行タスクを再開します。 それ以外の場合、データ移行タスクは失敗します。
説明同じソースまたはターゲットデータベースを共有する複数のデータ移行タスクに対して異なるリトライ時間範囲を指定した場合、後で指定される値が優先されます。
DTSが接続を再試行すると、DTSインスタンスに対して課金されます。 業務要件に基づいて再試行時間範囲を指定することを推奨します。 ソースデータベースとターゲットインスタンスがリリースされた後、できるだけ早くDTSインスタンスをリリースすることもできます。
ページの右下隅にある [次へ: タスク設定の保存と事前チェック] をクリックします。
説明DTSは、データ移行タスクの開始前に事前チェックを実行します。 データ移行タスクは、タスクが事前チェックに合格した後にのみ開始できます。
タスクが事前チェックに合格しなかった場合は、失敗した各項目の横にあるアイコンをクリックして詳細を表示できます。
詳細に基づいて問題をトラブルシューティングした後、再度事前チェックを実行します。
問題をトラブルシューティングする必要がない場合は、失敗した項目を無視し、新しい事前チェックを開始します。
事前チェックステップで、成功率が100% に達するまで待ち、[次へ: インスタンスの購入] をクリックします。
[インスタンスの購入] ステップで、[データ送信サービス (従量課金) サービス規約] を読み、選択します。
をクリックして、データ移行タスクを開始します。
DTSコンソールでデータ移行の進行状況を表示するには、次の手順を実行します。[データ移行] ページに移動し、データ移行タスクのIDをクリックします。 [タスク管理] ページで、データ移行の進行状況を表示できます。
説明ApsaraDB RDSコンソールでデータ移行の進行状況を表示するには、次の手順を実行します。RDSインスタンスの [バックアップと復元] ページに移動し、[バックアップデータのアップロード履歴] タブをクリックして、完全移行または増分移行タスクの進行状況を表示します。
完全移行が完了し、増分移行が進行中の場合は、必要なデータ移行タスクの [タスク管理] ページに移動し、[増分移行] タブをクリックし、[クラウドへの移行] をクリックします。
[クラウドへの移行] ダイアログボックスで、[今すぐ切り替え] をクリックし、移行が完了するまで待ちます。
説明データの一貫性を確保するために、ワークロードの切り替えをトリガーする前に、自己管理型SQL Serverデータベースへのデータの書き込みを停止することをお勧めします。 データ移行タスクが完了するのを待ってから、ワークロードを切り替えます。 プロセス全体に数分かかります。
付録: 物理プロトコルゲートウェイの作成
ここでは、物理プロトコルゲートウェイの作成方法について説明します。
前提条件
sysadminロールをNT AUTHORITY\SYSTEMアカウントに割り当てる必要があります。 SQLステートメントを実行して、ロールを割り当てることができます。
ALTER SERVER ROLE [sysadmin] ADD MEMBER [NT AUTHORITY\SYSTEM]
GO
使用状況ノート
AliyunDBSAgentは、Fullに移行するデータベースの復旧モデルを設定します。
リカバリモードがフルで、データがデータベースに継続的に書き込まれている場合、ソースデータベースのディスク領域が占有されます。 これにより、ソースデータベースのディスクスペースが使い果たされる可能性があります。 この問題を防ぐには、データ移行タスクが完了した後、次のステートメントを実行して回復モデルをSimpleに設定することをお勧めします。
ALTER DATABASE Database name SET RECOVERY Simple;
手順
[ソースデータベースと宛先データベースの設定] ページで、[物理プロトコルゲートウェイの作成] をクリックします。
[インストールコマンド] ダイアログボックスで、[バックアップゲートウェイのリージョン] および [バックアップゲートウェイのネットワークタイプ] パラメーターを設定します。 次に、コマンドをコピーして物理プロトコルゲートウェイをインストールし、インストールパッケージをダウンロードします。
説明パブリックネットワーク: パブリックIPアドレスを使用してDBSにアクセスできます。
ECSプライベートネットワーク /VPC: Alibaba Cloudから専用回線を使用してDBSにアクセスできます。
WindowsデバイスまたはサーバーにAliyunDBSAgentをインストールします。
ダウンロードしたファイル内のsetup.exeファイルをダブルクリックします。
インストール言語を選択し、OKをクリックし、次へをクリックします。
契約条件を読んで同意し、次へをクリックします。
物理プロトコルゲートウェイ (DBS Backup Gateway)を選択し、次へをクリックします。
インストールディレクトリを選択し、次へをクリックし、はいをクリックします。
[エージェントリージョン] パラメーターで指定されたリージョンを確認し、[AccessKey ID] と [AccessKey secret] を入力し、[次へ] をクリックします。
重要物理プロトコルゲートウェイがインストールされているリージョンがRDSインスタンスのリージョンと同じであることを確認してください。
AccessKeyペア情報は、プレーンテキスト形式で
. \config\dbs-agent.conf
インストールディレクトリのファイル。
インストールするコンポーネントパッケージを確認し、[次へ] をクリックします。
インストールが開始されます。 このプロセスは、約1〜5分を必要とする。
[完了] をクリックします。
ゲートウェイのインストールの進行状況は、
C:\Program Files\aliyun\dbs_agent\logs\agent.log
のインストールディレクトリで確認できます。 次の図のような情報が表示された場合、ゲートウェイがインストールされます。
DTSコンソールのインストールコマンドダイアログボックスで、インストール済みをクリックします。
物理プロトコルゲートウェイが起動しているかどうかを確認します。
Windowsの [実行] ダイアログボックスで、
services.msc
をクリックし、OKをクリックします。システムの [サービスマネージャ] ダイアログが表示されます。
サービスマネージャーダイアログボックスで、AliyunDBSAgentサービスが起動しているかどうかを確認します。 サービスが開始されていない場合は、AliyunDBSAgentを右クリックし、[開始] を選択します。
説明デフォルトでは、システムはバックアップゲートウェイを起動します。 サービスマネージャでAliyunDBSAgentサービスを開始および停止することもできます。
作成した物理プロトコルゲートウェイを表示します。
DBSコンソールの [バックアップゲートウェイ] ページで、[更新] をクリックして、作成した物理プロトコルゲートウェイを表示します。
説明新しい物理プロトコルゲートウェイの名前は、DTS_ で始まります。