すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:SQL Server のクラウド移行ソリューション

最終更新日:Mar 25, 2026

このトピックでは、SQL Server をクラウドに移行するための一般的なソリューションについて説明します。データソースの場所、各ソリューションが使用するツール、およびそれぞれの利点と制限事項に基づいて、ニーズに最適なソリューションを選択できます。

前提条件

  • 移行先として使用する ApsaraDB RDS for SQL Server インスタンスを作成します。移行先インスタンスの仕様とストレージ容量は、ソースデータベース以上である必要があります。

  • 次のSQL文を、ソースインスタンスおよび宛先インスタンスの両方で実行して、宛先インスタンスがソースインスタンスと互換であるかどうかを確認します。SELECT name, compatibility_level FROM sys.databases; ソースインスタンスと互換

  • ファイアウォール、IP ホワイトリスト、セキュリティグループなど、ソースデータベースと移行先データベースのセキュリティ設定で、移行ツールからのアクセスが許可されていることを確認します。

  • Data Transmission Service (DTS) を使用してクラウド移行を行う場合は、次の要件を満たす必要があります。

クラウド移行ソリューション

物理バックアップ移行

メソッド

操作手順

チュートリアル

Object Storage Service (OSS) を使用した手動クラウド移行

  1. データベースの復元モデル (backup_type) を FULL に変更します。

  2. 完全バックアップを実行し、バックアップファイルを OSS バケットにアップロードします。

  3. 増分ログを定期的にバックアップしてアップロードします。

  4. ソースデータベースへの書き込みを停止します。最後の増分ログを復元した後、ご利用のサービスを新しいデータベースに切り替えます。

データディザスタリカバリと DTS を使用した迅速なクラウド移行

  1. 物理ゲートウェイをデプロイします。

  2. このプロセスでは内部的に OSS バケットが使用されます。

  3. ソースデータベースへの書き込みを停止します。最後の増分ログを復元した後、ご利用のサービスを新しいデータベースに切り替えます。

物理ゲートウェイを使用して自己管理型 SQL Server データベースを移行

論理移行

増分同期モード

操作手順

チュートリアル

DTS の使用 (ログ解析)

  1. クラウド移行には DTS を使用します。

    説明

    SQL Server 増分同期モードソースデータベースのログに基づく増分同期 (ヒープテーブル非対応) に設定します。

  2. ソースデータベースへの書き込みを停止します。最後の増分データが同期された後、ご利用のサービスを新しいデータベースに切り替えます。

DTS の使用 (ハイブリッドログ解析)

  1. クラウド移行には、DTS を使用します。

    説明

    SQL Server 増分同期モード には、クラスター化テーブルはログ解析で増分同期し、ヒープテーブルの場合は CDC で増分同期します (ハイブリッド式ログ解析) を選択します。

  2. ソースデータベースへの書き込みを停止します。最後の増分データが同期された後、ご利用のサービスを新しいデータベースに切り替えます。

DTS の使用 (CDC インスタンスのポーリング)

  1. クラウド移行には DTS を使用します。

    説明

    SQL Server 増分同期モード増分同期のための CDC インスタンスのポーリングとクエリ に設定します。

  2. ソースデータベースへの書き込みを停止します。最後の増分データが同期された後、ご利用のサービスを新しいデータベースに切り替えます。

その他のソリューション

メソッド

操作手順

チュートリアル

SSMS ツールの使用

  1. ソースデータベースへの書き込みを停止します。

  2. SSMS ツールを使用して、ソースデータベースからデータをエクスポートします。

  3. SSMS ツールを使用して、エクスポートしたデータを移行先データベースにインポートします。

  4. データの整合性を確認し、ご利用のサービスを新しいデータベースに切り替えます。

SSMS を使用して ApsaraDB RDS for SQL Server にデータを移行

クラウド移行ソリューションの比較

物理バックアップ移行

メソッド

利点

制限事項

OSS を使用した手動クラウド移行

  • SQL Server のネイティブバックアップおよび復元機能を使用し、幅広いシナリオをサポートします。

  • 移行速度が速いです。

  • ソースデータベースのログ形式に基づいて、バックアップファイル名を手動で変更できます。

  • 手動でのバックアップとログのアップロードが必要であり、プロセスが複雑です。

  • 一度に移行できるデータベースは 1 つだけです。

  • 数分間のサービス停止時間が発生します。切り替え前にソースデータベースへの書き込みを停止し、最後の増分ログの復元を待つ必要があります。

  • 新しいバージョンから古いバージョンへの移行はサポートされていません。

  • データベース、テーブル、または列のマッピングはサポートされていません。

データディザスタリカバリと DTS を使用した迅速なクラウド移行

  • DTS コンソールでシンプルかつ便利な設定プロセスを提供します。

  • 1 つのタスクで複数のデータベースの移行をサポートします。

  • SQL Server のネイティブバックアップおよび復元機能を使用し、幅広いシナリオをサポートします。

  • 移行速度が速いです。

  • バックアップログファイルには .bak 拡張子が必要です。

  • 数分間のサービス停止時間が発生します。切り替え前にソースデータベースへの書き込みを停止し、最後の増分ログの復元を待つ必要があります。

  • ソースデータベースの物理マシンに AliyunDBSAgent をインストールする必要があります。

  • 新しいバージョンから古いバージョンへの移行はサポートされていません。

  • データベース、テーブル、または列のマッピングはサポートされていません。

論理移行

増分同期モード

利点

制限事項

DTS の使用 (ログ解析)

  • DTS コンソールでシンプルかつ便利な設定プロセスを提供します。

  • 異なるデータベースバージョン間の移行をサポートします。

  • データベース、テーブル、および列のマッピングをサポートします。

  • 増分移行タスクでは、ソースデータベースへの書き込みを停止する必要はありません。これにより、最小限のダウンタイムでスムーズな移行が可能になります。

  • サードパーティのクラウドから Alibaba Cloud へのデータベース移行をサポートします。

    たとえば、このモードでは、Amazon RDS for SQL Server からの完全移行、および Azure SQL Managed Instance と Azure Virtual Machines 上の SQL Server からの完全移行および増分移行をサポートしています。

  • 一部の DDL 操作のみがサポートされています。頻繁な DDL 操作 (1 時間に 100 回以上) は、移行スループットを低下させる可能性があります。

  • ソースデータベースのログ書き込みレートが 10 MB/s、30 GB/h、または 500 GB/d を超えると、タスクに遅延が発生したり、失敗したりする可能性があります。

  • ソースデータベースが 1 時間に 1 回以上バックアップされる場合、DTS はローカルバックアップログを取得できないことがあります。バックアップログはローカルディスクに少なくとも 3 日間保持してください。

  • DTS は、DDL の変更をキャプチャするために、ソースデータベースにトリガーや DDL ストレージテーブルなどのオブジェクトを作成します。

  • 増分移行中は外部キー制約を無効にする必要があります。そうしないと、タスクが失敗する可能性があります。

  • ヒープテーブル、プライマリキーのないテーブル、圧縮テーブル、または計算列を持つテーブルを含むシナリオはサポートされていません。

  • プライマリキーまたは一意性制約のないテーブルでは重複データが発生する可能性があるため、そのようなテーブルを移行する必要がある場合にはこのソリューションは適していません。

  • DTS は `fn_log` 関数を使用してログを取得および解析します。この関数は常に安定しているわけではなく、予期しない動作によってタスクが失敗する可能性があります。

  • 1 つの DTS タスクで移行できるデータベースは最大 10 個です。この制限を超えると、安定性とパフォーマンスの問題が発生する可能性があります。

DTS の使用 (ハイブリッドログ解析)

  • DTS コンソールでシンプルかつ便利な設定プロセスを提供します。

  • 異なるデータベースバージョン間の移行をサポートします。

  • データベース、テーブル、および列のマッピングをサポートします。

  • ヒープテーブル、プライマリキーのないテーブル、圧縮テーブルなど、特定のプロパティを持つテーブルをサポートします。

  • サードパーティのクラウドから Alibaba Cloud へのデータベース移行をサポートします。

    たとえば、このモードでは Amazon RDS for SQL Server からの完全移行、および Azure SQL Managed Instance と SQL Server on Azure Virtual Machines からの完全移行と増分移行の両方がサポートされています。

  • ソースデータベースは特定のバージョンである必要があります:Enterprise Edition は 2008 以降、Standard Edition は 2016 SP1 以降 (2017 を除く) である必要があります。

  • 一部の DDL 操作のみがサポートされています。頻繁な DDL 操作 (1 時間に 100 回以上) は、移行スループットを低下させる可能性があります。

  • ソースデータベースのログ書き込みレートが 10 MB/s、30 GB/h、または 500 GB/d を超えると、タスクに遅延が発生したり、失敗したりする可能性があります。

  • ソースデータベースが 1 時間に 1 回以上バックアップされる場合、DTS はローカルバックアップログを取得できないことがあります。バックアップログはローカルディスクに少なくとも 3 日間保持してください。

  • DTS は、データベースレベルの変更データキャプチャ (CDC) と一部のテーブルの CDC を有効にします。また、DDL の変更をキャプチャするために、ソースデータベースにトリガーや DDL ストレージテーブルなどのオブジェクトを作成します。

  • 増分移行中は外部キー制約を無効にする必要があります。そうしないと、タスクが失敗する可能性があります。

  • 計算列を持つテーブルを含むシナリオはサポートされていません。

  • プライマリキーまたは一意性制約のないテーブルでは重複データが発生する可能性があるため、そのようなテーブルを移行する必要がある場合にはこのソリューションは適していません。

  • DTS は `fn_log` 関数を使用してログを取得および解析します。この関数は常に安定しているわけではなく、予期しない動作によってタスクが失敗する可能性があります。

  • 1 つの DTS タスクで移行できるデータベースは最大 10 個です。この制限を超えると、安定性とパフォーマンスの問題が発生する可能性があります。

DTS の使用 (CDC インスタンスのポーリング)

  • DTS コンソールでシンプルかつ便利な設定プロセスを提供します。

  • 異なるデータベースバージョン間の移行をサポートします。

  • データベース、テーブル、および列のマッピングをサポートします。

  • サードパーティのクラウドから Alibaba Cloud へのデータベース移行をサポートします。

    たとえば、このモードでは、Amazon RDS for SQL Server、Azure SQL Database、およびGoogle Cloud SQL for SQL Serverからの完全移行および増分移行をサポートしています。

  • より安定した増分移行を提供し、ネットワーク帯域幅の使用量を抑えます。

    このモードは、SQL Server のネイティブな変更データキャプチャ (CDC) コンポーネントを使用して増分データを取得するため、ソースからトランザクションログをキャプチャする必要がなくなり、ソースデータベースでのログの切り捨ては DTS タスクに影響しません。

  • Azure Virtual Machines 上の SQL Server の場合、Enterprise Edition は 2008 以降、Standard Edition は 2016 SP1 以降 (2017 を除く) である必要があります。

  • ソースデータベースのDTSアカウントには、データベースレベルとテーブルレベルの両方のCDCを有効にする権限が必要です。データベースレベルのCDCにはsysadmin ロールが必要であり、テーブルレベルのCDCには特権アカウントが必要です。

    説明
    • Azure SQL Database コンソールで提供される特権アカウント(サーバー管理者)は、要件を満たしています。vCore ベースのデータベースでは、すべてのインスタンスタイプで CDC をサポートしています。DTU ベースのデータベースでは、S3 以降のインスタンスタイプのみが CDC をサポートしています。

    • Amazon RDS for SQL Server の特権アカウントは要件を満たしており、ストアドプロシージャ向けにデータベースレベルの CDC を有効化するために使用できます。

    • クラスター化列ストアインデックステーブルでは CDC はサポートされません。

    • 増分移行タスクの前提条件モジュールにより、ソースデータベースに対して CDC が有効化されます。この処理中に、SQL Server データベースカーネルの制限により、ソースデータベースが一時的にロック済みとなる場合があります。

  • 1,000 を超えるソーステーブルを移行すると、遅延や不安定さが発生する可能性があります。

  • 1 つの DTS タスクで移行できるデータベースは最大 10 個です。この制限を超えると、安定性とパフォーマンスの問題が発生する可能性があります。

  • プライマリキーまたは一意性制約のないテーブルでは重複データが発生する可能性があるため、そのようなテーブルを移行する必要がある場合にはこのソリューションは適していません。

  • 増分データ移行には約 10 秒の遅延があります。

  • 列を追加または削除するための連続した DDL 操作 (1 分以内に 2 回以上の操作) はサポートされておらず、タスクが失敗する可能性があります。

  • ソースデータベースの CDC インスタンスを変更しないでください。変更すると、タスクが失敗したり、データ損失が発生したりする可能性があります。

  • 複数のデータベースにまたがる多数のテーブルを移行すると、安定性とパフォーマンスのリスクが生じる可能性があります。

その他のソリューション

メソッド

利点

制限事項

SSMS ツールの使用

プロセスはシンプルで安定しており、データの不整合のリスクが低いです。

  • データの不整合を防ぐために、ソースデータベースへの書き込みを停止する必要があります。

  • SSMS ツールを使用した手動移行が必要です。

クラウド移行ソリューションの選択

重要
  • ソースデータベースが増分移行をサポートしていない場合は、移行を開始する前にソースデータベースでのすべての書き込み操作を停止する必要があります。

  • 自己管理型 SQL Server または TencentDB for SQL Server 以外のソースから DTS を使用して論理移行を行う場合、増分データ移行には [Poll and Query CDC Instances for Incremental Synchronization] モードを使用する必要があります。

データソース

増分移行のサポート

利用可能なソリューション

推奨ソリューション

自己管理型 SQL Server

はい

  • OSS を使用した物理バックアップによる手動クラウド移行

  • データディザスタリカバリと DTS を使用した物理バックアップによる迅速なクラウド移行

  • DTS を使用した論理移行

データディザスタリカバリと DTS を使用した物理バックアップによる迅速なクラウド移行

Azure SQL Database

はい

  • DTS を使用した論理移行

  • RDS を使用したエンドツーエンドのクラウド移行

  • SSMS ツールを使用したクラウド移行

RDS を使用したエンドツーエンドのクラウド移行または DTS を使用した論理移行

Azure SQL Managed Instance

SQL Server on Azure Virtual Machines

  • DTS を使用した論理移行

  • RDS を使用したエンドツーエンドのクラウド移行

  • SSMS ツールを使用したクラウド移行

  • OSS を使用した物理バックアップによる手動クラウド移行

Amazon RDS for SQL Server

はい

  • DTS を使用した論理移行

  • RDS を使用したエンドツーエンドのクラウド移行

  • SSMS ツールを使用したクラウド移行

  • OSS を使用した物理バックアップによる手動クラウド移行

RDS を使用したエンドツーエンドのクラウド移行または DTS を使用した論理移行

Huawei Cloud RDS for SQL Server

はい

  • SSMS ツールを使用したクラウド移行

  • DTS を使用した論理移行

  • OSS を使用した物理バックアップによる完全な手動クラウド移行

DTS を使用した論理移行

TencentDB for SQL Server

はい

  • DTS を使用した論理移行

  • OSS を使用した物理バックアップによる手動クラウド移行

  • SSMS ツールを使用したクラウド移行

DTS を使用した論理移行

Google Cloud SQL for SQL Server

はい

  • SSMS ツールを使用したクラウド移行

  • DTS を使用した論理移行

DTS を使用した論理移行

次のステップ

データ検証

SQL Server データベースを移行した後、すべてのデータが ApsaraDB RDS for SQL Server インスタンスに完全に移行されたことを確認します。ニーズに応じて検証方法を選択できます。次のセクションでは、2 つの一般的な方法について説明します。

コアデータの検証

日付または自動増分 ID でデータを並べ替えて、最新のビジネスデータが正しく移行されたかどうかを確認できます。たとえば、Orders という名前のコアビジネステーブルに OrderID (自動増分 ID) や OrderDate などのフィールドが含まれている場合、次のクエリを実行できます。

-- ソースデータベースインスタンスでの SQL クエリ
SELECT TOP 10 OrderID, OrderDate, CustomerID, TotalAmount
FROM Orders
ORDER BY OrderDate DESC;

-- 移行先データベースインスタンスでの SQL クエリ
SELECT TOP 10 OrderID, OrderDate, CustomerID, TotalAmount
FROM Orders
ORDER BY OrderDate DESC;

DTS を使用した完全検証

DTS を使用すると、サービスを停止することなく、ソースデータベースと移行先データベース間のデータを検証できます。DTS を使用して完全データ検証タスクを作成し、すべてのデータが完全に移行されたかどうかを確認できます。

データベース統計の更新

移行後、移行先の ApsaraDB RDS for SQL Server インスタンスのパフォーマンスが大幅に低下した場合、原因は ApsaraDB RDS for SQL Server インスタンス内のデータ分散の変更である可能性があります。データベース統計の完全な更新を実行して、インスタンスのパフォーマンスを復元または向上させることができます。