ApsaraDB RDS コンソールまたは Data Transmission Service (DTS) コンソールを使用して、Azure SQL Database から ApsaraDB RDS for SQL Server へスキーマ、完全データ、および増分データを移行します。サポート対象のソースは、Azure SQL Database、Azure SQL Managed Instance、および Azure Virtual Machines 上の SQL Server です。
移行方法の選択
|
RDS コンソール (ワンストップのクラウド移行) |
DTS コンソール |
|
|
[移行タイプ] |
スキーマ、完全データ、増分データ (デフォルト、設定不可) |
設定可能:スキーマ、完全データ、増分データ、または任意の組み合わせ |
|
詳細設定 |
速度制限とデータ検証 |
速度制限、ETL、モニタリングとアラート、リトライ設定、専用クラスター |
|
最適な用途 |
標準要件での初回移行 |
カスタムの移行タイプまたはきめ細かい制御が必要な移行 |
前提条件
開始する前に、以下が満たされていることを確認してください。
-
ソースデータの合計サイズよりも大きい利用可能なストレージがある、ApsaraDB RDS for SQL Server インスタンスが必要です。「ApsaraDB RDS for SQL Server インスタンスの作成」をご参照ください。
-
DTS がアクセスできるように、Azure SQL データベースを Alibaba Cloud に接続しておく必要があります。「Azure データベースの Alibaba Cloud への接続」をご参照ください。
説明Azure Virtual Machines 上の SQL Server の場合:Enterprise Edition は SQL Server 2008 以降、Standard Edition は SQL Server 2016 SP1 以降が必要です。SQL Server 2017 はサポートされていません。
制限
ソースデータベース
-
1 つの移行タスクあたり最大 10 個のデータベースです。10 個を超えるデータベースを移行する場合は、複数のタスクを設定してください。
-
Azure SQL Database:1 つのタスクで移行できるデータベースは 1 つのみです。
-
読み取り専用インスタンスは、ソースデータベースとして使用できません。
-
ソースサーバーには十分なアウトバウンド帯域幅が必要です。十分でない場合、移行速度が低下します。
-
移行対象のテーブルには、プライマリキー、またはすべてのフィールドが一意である UNIQUE 制約が必要です。そうでない場合、ターゲットに重複レコードが含まれる可能性があります。
-
スキーマ移行および完全データ移行の実行中は、DDL ステートメントを実行しないでください。移行中にスキーマ変更が発生すると、タスクは失敗します。
-
完全移行のみ (増分なし) の実行中は、ソースデータベースに書き込まないでください。データの一貫性を確保するために、スキーマ移行、完全データ移行、増分データ移行をまとめて選択することを推奨します。
-
共有ロックの競合とデータの不整合を回避するために、完全データ移行の実行中は、ソースデータベースで
READ_COMMITTED_SNAPSHOTを有効にすることを推奨します。
データログの保持
-
増分移行のみ:データログを 24 時間を超えて保持してください。
-
完全 + 増分移行:データログを少なくとも 7 日間保持してください。完全移行が完了した後、保持期間を 24 時間を超える値に短縮できます。
-
データログが必要な期間保持されていない場合、サービスの信頼性やパフォーマンスは、DTS のサービスレベルアグリーメント (SLA) では保証されません。
CDC の制限
-
DTS は事前チェックのフェーズでソースデータベースの CDC を有効にするため、数秒間継続するテーブルロックが発生します。
-
増分移行:変更データ キャプチャ (CDC) が有効になっているソーステーブル数は 1,000 を超えることはできません。1 つの移行タスクで移行する CDC 有効テーブル数が 1,000 を超える場合、事前チェックは失敗します。
-
CDC は、増分データをデフォルトで 3 日間保持します。次のコマンドを使用して保持期間を調整してください:
exec sys.sp_cdc_change_job @job_type = 'cleanup', @retention = <time>;。ここで、<time>の単位は分です。1 日あたりの増分データが 1,000 万レコードを超える場合は、<time>を 1,440 に設定してください。 -
CDC が有効なテーブルの単一フィールドが 64 KB を超える場合は、タスクを開始する前に次のコマンドを実行してください:
EXEC sp_configure 'max text repl size', -1; -
CDC が有効なテーブルに対して、1 分あたり 2 回を超えて列を追加または削除しないでください。
-
移行中は、ソースデータベース上の CDC インスタンスを変更しないでください。タスクが失敗するか、データ損失が発生する可能性があります。
-
増分データ移行のレイテンシーは約 10 秒です。
-
DTS は、CDC が有効なテーブルのプライマリキーに関連する DDL 操作を移行できません。
-
同じソース SQL Server データベースを共有する複数のデータ移行インスタンスの増分データ収集モジュールは、それぞれ独立しています。
DTS によって作成されるソースデータベースオブジェクト
ソースデータベースのログに基づく増分同期モードでは、DTS はソースデータベースに、トリガー dts_cdc_sync_ddl、ハートビートテーブル dts_sync_progress、および DDL 履歴テーブル dts_cdc_ddl_history を作成します。ハイブリッドログベースの解析による増分同期モードでは、DTS は同じオブジェクトを作成し、さらにソースデータベースおよび特定のテーブルの CDC を有効にします。CDC が有効なテーブルの 1 秒あたりの最大レコード数を 1,000 に設定してください。
ターゲットデータベース
-
増分データ移行を含むすべてのタスクについて、ターゲットデータベースのトリガーと外部キーを無効にしてください。増分データ移行の実行中は、ターゲットデータベースで再インデックス操作を実行できません。そうでない場合、タスクが失敗するか、データ損失が発生する可能性があります。
-
DTS は、ソースデータベースから外部キー (カスケードおよび削除操作を含む) を移行しません。
-
データベース名が ApsaraDB RDS for SQL Server の命名規則に準拠していない場合は、タスクを設定する前に、ターゲットインスタンスにデータベースを手動で作成してください。詳細については、「Create a database」をご参照ください。
-
完全データ移行の後、同時 INSERT の断片化により、ターゲットのテーブルスペースはソースよりも大きくなります。
サポート対象外のデータ型
DTS は、CURSOR、ROWVERSION、SQL_VARIANT、HIERARCHYID、POLYGON、GEOMETRY、GEOGRAPHY を移行しません。
FLOAT と DOUBLE の精度
DTS は ROUND(COLUMN,PRECISION) を使用して FLOAT 値と DOUBLE 値を取得します。デフォルトの精度は、FLOAT は 38 桁、DOUBLE は 308 桁です。開始する前に、これらのデフォルト値が要件を満たしていることを確認してください。
失敗したタスクの再開
DTS は失敗したタスクを最大 7 日間、自動的にリトライします。ワークロードをターゲットに切り替える前に、ソースデータがターゲットを上書きしないように、失敗したタスクを停止またはリリースするか、DTS アカウントの書き込み権限を取り消してください。
DTS タスクの実行に失敗した場合、DTS テクニカルサポートは 8 時間以内にタスクの復旧を試みます。復旧中に、タスクが再起動され、タスクのパラメーターが変更される場合があります。
パフォーマンスへの影響
データを移行する前に、データ移行がソースデータベースとターゲットクラスターのパフォーマンスに与える影響を評価してください。オフピーク時間にデータを移行することを推奨します。完全データ移行の実行中、DTS はソースデータベースとターゲットデータベースの読み取りおよび書き込みリソースを使用するため、データベースサーバーの負荷が増加する可能性があります。
課金
|
移行タイプ |
インスタンス料金 |
インターネットトラフィック料金 |
|
スキーマ移行と全量データ移行 |
無料 |
移行先の [アクセス方法] が [パブリック IP アドレス] に設定されている場合に料金が発生します。「課金概要」をご参照ください。 |
|
増分データ移行 |
料金が発生します (従量課金)。「課金概要」をご参照ください。 |
— |
必要な権限
Azure SQL Database (ソース)
|
移行タイプ |
必要な権限 |
|
スキーマ移行 |
|
|
フルデータ移行 |
|
|
増分データ移行 |
|
Azure SQL Database コンソールで提供されるサーバー管理者アカウントは、上記のすべての権限要件を満します。
料金モデル別の CDC サポート:
-
vCore モデル:すべての仕様で CDC をサポートします。
-
DTU モデル:S3 以上の仕様のみが CDC をサポートします。
RDS for SQL Server (移行先)
すべての移行タイプ (スキーマ、フルデータ、増分データ) には、読み取りおよび書き込み権限が必要です。
ApsaraDB RDS コンソールで標準アカウントまたは特権アカウントを作成し、必要に応じてアカウント権限を変更します。
方法1:RDS コンソールの使用
-
ApsaraDB RDS インスタンスリストを開き、対象リージョンを選択し、インスタンス ID をクリックします。
-
左側のナビゲーションペインで、[データ移行と同期] をクリックします。
-
[ワンストップクラウド] をクリックし、ソースとデスティネーションのデータベース情報を設定します。
ソースデータベースのパラメーター
パラメーター
説明
[タスク名]
タスクのわかりやすい名前です。一意である必要はありません。
[データベースタイプ]
デフォルトで [SQL Server] に設定されています。操作は不要です。
[タイプ]
[Azure] を選択します。
[アクセス方法]
Azure データベースが Alibaba Cloud に接続する方法に基づいて、[パブリック IP アドレス] または [Express Connect、VPN ゲートウェイ、または Smart Access Gateway] を選択します。 Azure SQL Managed Instance の場合、[パブリック IP アドレス] を選択します。
[インスタンスリージョン]
[パブリック IP アドレス] には、Azure SQL データベースが存在するリージョンを選択します (正確なリージョンが利用できない場合は、最も近いリージョンを選択します)。Express Connect、VPN ゲートウェイ、または Smart Access Gateway には、Azure データベースに接続されている Alibaba Cloud Virtual Private Cloud (VPC) のリージョンを選択します。
[接続済み VPC]
Azure データベースに接続されている Alibaba Cloud VPC。[アクセス方法]が Express Connect、VPN Gateway、または Smart Access Gateway の場合にのみ利用可能です。
[ドメイン名または IP]
Azure SQL データベースのドメイン名または IP アドレスです。可能な限りドメイン名を指定してください。
[ポート番号]
Azure SQL データベースのサービスポートです。
[データベースアカウント]
Azure SQL データベースのアカウント。 Azure SQL データベースの場合、
<管理者ユーザー名>@<サーバー名>の形式を使用します。 例えば、管理者アカウントがtestuserで、サーバー名がdtstestの場合 (SELECT @@SERVERNAME AS ServerNameを実行してサーバー名を照会)、testuser@dtstestと入力します。[データベースパスワード]
データベースアカウントのパスワードです。
[暗号化]
SSL が有効になっていない場合は、[非暗号化] を選択します。SSL が有効な場合は、[SSL 暗号化] を選択します (デフォルトで DTS はサーバー証明書を信頼します)。
ターゲットデータベースのパラメーター
パラメーター
説明
[データベースタイプ]
デフォルトで [SQL Server] に設定されています。操作は不要です。
[アクセス方法]
デフォルトで [Alibaba Cloud インスタンス] に設定されています。操作は不要です。
[インスタンスリージョン]
ApsaraDB RDS for SQL Server インスタンスのリージョンです (読み取り専用)。
[インスタンス ID]
ターゲットインスタンスの ID です (読み取り専用)。
[データベースアカウント]
必要な権限を持つターゲットインスタンスのアカウントです。
[データベースパスワード]
データベースアカウントのパスワードです。
[暗号化]
移行先データベースの設定に応じて、[非暗号化] または [SSL 暗号化] を選択します。
-
[接続性をテストして続行] をクリックします。
重要ダイアログボックスに表示される DTS サーバーの CIDR ブロックを、Azure SQL データベースのホワイトリストに追加してください。DTS IP アドレスの追加 はセキュリティリスクを伴う場合があります。パスワードポリシーの強化やポートアクセスの制限など、適切なセキュリティ対策を実施してください。
-
移行プランを選択します。
-
[全量および増分データ移行]:[オブジェクトの設定] をクリックし、次のステップに進みます。
-
その他のプラン:ページ下部にある[移行ドキュメントの表示]の手順に従ってください。
-
-
[オブジェクトの設定] ページで、移行するオブジェクトを設定します。
パラメーター
説明
[ソースデータベースのトリガーを移行する方法]
トリガーを移行するタイミングを制御します。 増分移行が完了する前にトリガーが移行することによるデータ不整合を回避するには、[手動移行] を選択します。 トリガーを移行する必要がない場合は、デフォルト設定のままにします。 詳細については、「トリガーの同期または移行を設定する」をご参照ください。
[ソースオブジェクト]
オブジェクトを選択し、
をクリックして [選択したオブジェクト] に追加します。テーブルまたは列を選択した場合、ビュー、トリガー、およびストアドプロシージャは除外されます。[選択済みオブジェクト]
オブジェクトを右クリックして、名前を変更 (オブジェクト名マッピング を使用)、WHERE フィルター条件の追加、または移行する特定の SQL 操作を選択します。オブジェクトを削除するには、オブジェクトを選択して
をクリックします。オブジェクトの名前を変更すると、依存オブジェクトの移行が失敗する可能性がある点にご注意ください。 -
(任意) [詳細設定] を展開して、スロットリングまたはデータ検証を設定します。
パラメーター
説明
[完全データ移行の速度制限を有効化]
フルマイグレーション中のリソース使用量を制限します。[ソースデータベースへの QPS]、[フルマイグレーションの RPS]、および [フルマイグレーションのデータ移行速度 (MB/s)] を設定します。
[増分データ移行の速度制限を有効化]
増分移行中のリソース使用量を制限します。[増分データ移行の RPS] と [増分移行のデータ移行速度 (MB/s)] を設定します。
[データ検証モード]
100% のサンプリングでハッシュ値を確認するには、[完全データ検証] を選択します。検証をスロットリングするには、[完全検証で毎秒読み取られるデータの最大行数] と [完全検証で毎秒読み取られる最大バイト数 (バイト/秒)] を設定します。スロットリングを無効にするには、両方を 0 に設定します。
-
[次へ:タスク設定の保存と事前チェック] をクリックします。DTS は、移行タスクを開始する前に事前チェックを実行します。事前チェック項目が失敗した場合:
-
失敗した各項目の横にある[詳細の表示]をクリックして問題をトラブルシューティングし、[再事前チェック]をクリックします。
-
無視できるアラート項目については、[アラート詳細の確認] > [無視] > [OK] > [再事前チェック] の順にクリックします。アラートを無視すると、データの不整合が発生する可能性があります。
このタスクの OpenAPI パラメーターをプレビューするには、続行する前にボタンにポインターを合わせて [OpenAPI パラメーターのプレビュー] をクリックします。
-
-
[成功率] が [100%] に達するまで待ち、[次へ: インスタンスの購入] をクリックします。
-
[インスタンスの購入] ページでインスタンスクラスを設定し、[データ伝送サービス (従量課金) のサービス利用規約] チェックボックスを選択し、[購入して開始] > [OK] をクリックして購入を完了します。
パラメーター
説明
[リソースグループ]
移行インスタンスのリソースグループ。デフォルトは [デフォルトのリソースグループ] です。「リソース管理とは」をご参照ください。
[インスタンスクラス]
インスタンスクラスによって移行速度が決まります。詳細については、「データ移行インスタンスのインスタンスクラス」をご参照ください。
[データ移行] ページで進捗状況を監視します。 次の表では、タスクのステータスについて説明します。
|
ステータス |
説明 |
|
[実行中] |
増分データ移行がアクティブです。タスクは継続的に実行され、自動的に停止しません。 |
|
[完了] |
タスクが正常に完了しました。増分データ移行を含まないタスクの場合にのみ表示されます。 |
方法 2:DTS コンソールの使用
-
左側のナビゲーションペインで[データ移行]をクリックし、リージョンを選択します。
-
[タスクの作成] をクリックして、ソースデータベースと宛先データベースの情報を設定します。
ソースデータベースのパラメータ
パラメータ
説明
[タスク名]
タスクのわかりやすい名前です。一意である必要はありません。
[既存の接続を選択]
DTS データベース接続管理から以前に登録したソースデータベースを選択して、手動入力をスキップします。
[データベースタイプ]
[SQL Server] を選択します。
[アクセス方法]
[パブリック IP アドレス] または Express Connect、VPN ゲートウェイ、または Smart Access Gateway を選択します。Azure SQL Managed Instance の場合は、[パブリック IP アドレス] を選択します。
[インスタンスリージョン]
[パブリック IP アドレス] の場合は Azure SQL データベースのリージョン (利用できない場合は最も近いものを選択) であり、Express Connect、VPN Gateway、または Smart Access Gateway の場合は Azure データベースに接続されている Alibaba Cloud VPC のリージョンとなります。
[Alibaba Cloud アカウント間でのデータ複製]
同じ Alibaba Cloud アカウント内で移行する場合は、[いいえ] を選択します。[アクセス方法] が Express Connect、VPN Gateway、または Smart Access Gateway の場合にのみ利用可能です。
[接続済み VPC]
Azure データベースに接続されている Alibaba Cloud VPC。[アクセス方法] が Express Connect、VPN Gateway、または Smart Access Gateway の場合にのみ利用可能です。
[ドメイン名または IP]
Azure SQL データベースのドメイン名または IP アドレスです。可能な限りドメイン名を指定してください。
[ポート番号]
Azure SQL データベースのサービスポートです。
[データベースアカウント]
Azure SQL データベースのアカウントです。Azure SQL Database の場合は、
<管理者ユーザー名>@<サーバー名>の形式を使用してください。たとえば、管理者アカウントがtestuserで、サーバーがdtstestの場合 (SELECT @@SERVERNAME AS ServerNameを実行して確認)、testuser@dtstestと入力します。[データベースパスワード]
データベースアカウントのパスワードです。
[暗号化]
ソースデータベースの設定に応じて、[非暗号化] または [SSL 暗号化] を選択します。
ターゲットデータベースのパラメータ
パラメータ
説明
[既存の接続を選択]
DTS データベース接続管理から以前に登録したターゲットデータベースを選択して、手動入力をスキップします。
[データベースタイプ]
[SQL Server] を選択します。
[アクセス方法]
[Alibaba Cloud インスタンス] を選択します。
[インスタンスリージョン]
移行先の ApsaraDB RDS for SQL Server インスタンスのリージョンです。
[インスタンス ID]
移行先インスタンスの ID です。
[データベースアカウント]
必要な権限を持つ移行先インスタンスのアカウントです。
[データベースパスワード]
データベースアカウントのパスワードです。
[暗号化]
移行先データベースの設定に応じて、[非暗号化] または [SSL 暗号化] を選択します。
-
[接続をテストして続行] をクリックします。
重要ダイアログボックスに表示される DTS サーバーの CIDR ブロックを、Azure SQL データベースのホワイトリストに追加してください。DTS IP アドレスの追加はセキュリティリスクをもたらす可能性があります。パスワードポリシーの強化やポートアクセスの制限など、適切なセキュリティ対策を実施してください。
-
[オブジェクトの設定] ページで、移行オブジェクトとタイプを設定します。
パラメータ
説明
[移行タイプ]
移行タイプとして スキーマ移行、[フルデータ移行]、[増分データ移行] を選択します。ゼロダウンタイム移行の場合は、3 つすべてを選択します。スキーマ移行 を選択しない場合は、移行先のデータベースとテーブルを手動で作成し、必要に応じてオブジェクト名のマッピングを使用します。[増分データ移行] を選択しない場合は、移行中に移行元データベースに書き込まないでください。
[ソースデータベースのトリガーを移行する方法]
スキーマ移行と[増分データ移行]の両方を選択した場合に利用できます。データ不整合を防止するには、[手動移行]を選択してください。詳細については、「トリガーの同期または移行を設定する」をご参照ください。
[SQL Server 増分同期モード]
[増分同期のための CDC インスタンスのポーリングとクエリ] を選択します。[増分データ移行] が選択されている場合にのみ使用可能です。
[DTS がサポートする CDC が有効なテーブルの最大数]
デフォルト値のままにしてください。
[競合するテーブルの処理モード]
[事前チェックとエラー報告] (デフォルト): 移行先テーブルと移行元テーブルの名前が同じ場合、事前チェックは失敗します。[エラーを無視して続行]: チェックをスキップします。注意して使用してください。完全移行の場合、重複する主キーレコードは移行先で保持されます。増分移行の場合、それらは上書きされます。スキーマの相違は、部分的な移行やタスクの失敗を引き起こす可能性があります。
[移行先インスタンスのオブジェクト名の大文字小文字]
移行先のデータベース名、テーブル名、列名の大文字/小文字を制御します。 デフォルトは [DTS デフォルトポリシー] です。 詳細については、「移行先インスタンスのオブジェクト名の大文字/小文字を指定する」をご参照ください。
[ソースオブジェクト]
オブジェクトを選択し、
をクリックして [選択済みオブジェクト] に追加します。テーブルまたは列を選択すると、ビュー、トリガー、ストアドプロシージャは除外されます。[選択済みオブジェクト]
オブジェクトを右クリックして、名前の変更、WHERE フィルターの追加、または特定の SQL 操作の選択を行います。オブジェクトを削除するには、オブジェクトを選択して
をクリックします。 -
[次へ: 詳細設定] をクリックして、詳細パラメーターを設定します。
パラメータ
説明
[タスクスケジューリング用の専用クラスター]
デフォルトでは、DTS は共有クラスターを使用します。より高い安定性を実現するには、DTS 専用クラスターを購入してください。詳細については、「DTS 専用クラスターとは」をご参照ください。
[接続失敗時のリトライ時間]
接続失敗後に DTS がリトライする期間です。範囲:10~1,440 分。デフォルト:720 分。少なくとも 30 分に設定してください。この期間内に接続が復元されると、DTS はタスクを再開します。注意:ソースまたは移行先データベースを共有する複数のタスクは、最後に設定されたリトライ時間を使用します。リトライ中、DTS はインスタンスに対して課金します。
[その他の問題のリトライ時間]
DDL または DML 操作が失敗した場合に DTS が再試行する期間です。 範囲:1~1,440 分。 デフォルト:10 分。 10 分より大きい値に設定します。 [失敗した接続の再試行時間] より小さい値にする必要があります。
[完全データ移行のスロットリングを有効化]
[完全データ移行] を選択した場合に利用可能です。[ソースデータベースへの QPS]、[完全データ移行の RPS]、および [完全移行のデータ移行速度 (MB/s)] を設定します。
[増分データ移行のスロットリングを有効化]
[増分データ移行] が選択されている場合に使用できます。[増分データ移行の RPS] と [増分移行のデータ移行速度 (MB/s)] を設定します。
[環境タグ]
DTS インスタンスを識別するためのオプションのタグです。
[ETL の設定]
抽出、変換、ロード (ETL) を有効にしてデータ処理ステートメントを入力するには、[はい]アラート通知設定 を選択します。「データ移行またはデータ同期タスクで ETL を設定する」をご参照ください。スキップするには、[いいえ] を選択します。
[モニタリングとアラート]
タスクが失敗した場合、または移行レイテンシーがしきい値を超えた場合に通知を受信するには、[はい] を選択します。 アラートのしきい値と通知設定を構成します。 詳細については、「モニタリングとアラートの設定」をご参照ください。
-
[次のステップ: データ検証] をクリックしてデータ検証を設定します。詳細については、「データ検証を設定する」をご参照ください。
-
[次へ: タスク設定を保存して事前チェック] をクリックします。事前チェック項目が失敗した場合:
-
失敗した各項目の横にある[詳細の表示]をクリックして問題をトラブルシューティングし、[再度事前チェック]をクリックします。
-
無視できるアラート項目については、[アラート詳細の確認] > [無視] > [OK] > [再度事前チェック] の順にクリックします。アラートを無視すると、データの不整合を引き起こす可能性があります。
このタスクの OpenAPI パラメーターをプレビューするには、続行する前にボタンにポインターを合わせ、 [OpenAPI パラメーターのプレビュー] をクリックします。
-
-
[成功率] が [100%] に達するまで待ってから、[次へ:インスタンスの購入] をクリックします。
-
[インスタンスの購入] ページでインスタンスクラスを設定し、購入を完了します。[データ伝送サービス (従量課金) 利用規約] チェックボックスを選択してから、[購入して開始] > [OK] の順にクリックします。
パラメータ
説明
[リソースグループ]
移行インスタンスのリソースグループ。デフォルト値は [デフォルトリソースグループ] です。
[インスタンスクラス]
移行速度を決定します。詳細については、「データ移行インスタンスのインスタンスクラス」をご参照ください。
[データ移行] ページで進捗状況を監視します。タスクのステータスは次のとおりです。
|
ステータス |
説明 |
|
[実行中] |
増分データ移行がアクティブです。タスクは継続的に実行され、自動的に停止しません。 |
|
[完了] |
タスクが正常に完了しました。増分データ移行を含まないタスクの場合にのみ表示されます。 |
付録 1:増分データ移行でサポートされる SQL 操作
DML 操作
INSERT、UPDATE、DELETE
UPDATE が大きなフィールドのみを変更する場合、DTS はそれを移行しません。
DDL 操作
サポートされる DDL 操作:
-
CREATE TABLE (パーティション化されたテーブルまたは関数を含むテーブルではサポートされません)
-
ALTER TABLE (ADD COLUMN および DROP COLUMN のみ)
-
DROP TABLE
-
CREATE INDEX および DROP INDEX
移行対象外の DDL 操作:
-
トランザクション DDL (1 つの文で複数の列を追加する、または DDL と DML を組み合わせた文)
-
ユーザー定義型を含む DDL
-
オンライン DDL
-
名前が予約語であるオブジェクトに対する DDL
-
システムストアドプロシージャによって実行される DDL
-
TRUNCATE TABLE
付録 2:スキーマ移行のサポート対象オブジェクト
サポート対象オブジェクトタイプ:テーブル、ビュー、トリガー、シノニム、SQL ストアドプロシージャ、SQL 関数、プラン ガイド、ユーザー定義型、ルール、既定値、シーケンス。
サポート対象外:アセンブリ、Service Broker、フルテキスト インデックス、フルテキスト カタログ、分散スキーマ、分散関数、CLR ストアドプロシージャ、CLR スカラー値関数、CLR テーブル値関数、内部テーブル、システム、集計関数。
よくある質問
ApsaraDB RDS コンソールで移行タスクを設定する際に、検証するオブジェクトを選択できますか?
いいえ。検証対象のオブジェクトは、常に移行対象として選択したオブジェクトと同じです。
ApsaraDB RDS コンソールで設定したタスクでは、どの検証方法が使用されますか?
DTS は、サンプリング率 100% で移行されたすべてのデータのハッシュ値を確認し、ソースデータベースとデスティネーションデータベースのすべてのレコードを比較します。