FAQ - Azure データベース移行サービス (2023)

この記事では、Azure Database Migration Service の使用に関してよく寄せられる質問と関連する回答を示します。

概要

Azure データベース移行サービスとは何ですか?

Azure Database Migration Service は、最小限のダウンタイムで複数のデータベース ソースから Azure データ プラットフォームへのシームレスな移行を可能にするように設計されたフルマネージド サービスです。このサービスは現在一般提供中であり、以下に焦点を当てた開発作業が継続的に行われています。

  • 信頼性とパフォーマンス。
  • ソースとターゲットのペアを反復的に追加します。
  • スムーズな移行への継続的な投資。

Azure Database Migration Service は現在どのようなソース/ターゲットのペアをサポートしていますか?

このサービスは現在、さまざまなソース/ターゲットのペア、または移行シナリオをサポートしています。利用可能な各移行シナリオのステータスの完全なリストについては、記事を参照してください。Azure Database Migration Service でサポートされている移行シナリオのステータス

Azure Database Migration Service はソースとしてどのバージョンの SQL Server をサポートしていますか?

SQL Server から移行する場合、Azure Database Migration Service でサポートされるソースは SQL Server 2008 以降のバージョンです。 SQL Migration 拡張機能を備えた Azure Data Studio を使用する場合、サポートされるソースは SQL Server 2008 ~ SQL Server 2022 です。

Azure Database Migration Service を使用する場合、オフライン移行とオンライン移行の違いは何ですか?

Azure Database Migration Service を使用して、オフラインおよびオンラインの移行を実行できます。とオフライン移行では、移行の開始時にアプリケーションのダウンタイムが始まります。とオンライン移行中、ダウンタイムは移行終了時のカットオーバー時間に限定されます。オフライン移行をテストして、ダウンタイムが許容できるかどうかを判断することをお勧めします。そうでない場合は、オンライン移行を実行します。

ノート

Azure Database Migration Service を使用してオンライン移行を実行するには、プレミアム価格レベルに基づいてインスタンスを作成する必要があります。詳細については、「Azure Database Migration Service」を参照してください。価格設定ページ。

Azure Database Migration Service は、Database Migration Assistant (DMA) や SQL Server Migration Assistant (SSMA) などの他の Microsoft データベース移行ツールとどう違うのですか?

Azure Database Migration Service は、Microsoft Azure への大規模なデータベース移行に推奨される方法です。 Azure Database Migration Service と他の Microsoft データベース移行ツールとの比較の詳細、およびさまざまなシナリオでのサービスの使用に関する推奨事項については、次を参照してください。Microsoft のデータベース移行ツールとサービスの差別化

Azure Database Migration Service は Azure Migrate サービスとどのように比較できますか?

Azure Migrate は、オンプレミスの仮想マシンの Azure IaaS への移行を支援します。このサービスは、移行の適合性とパフォーマンス ベースのサイジングを評価し、Azure でオンプレミスの仮想マシンを実行するためのコストの見積もりを提供します。 Azure Migrate は、オンプレミスの VM ベースのワークロードを Azure IaaS VM にリフト アンド シフトで移行する場合に役立ちます。ただし、Azure Database Migration Service とは異なり、Azure Migrate は、Azure SQL Database や Azure SQL Managed Instance などの Azure PaaS リレーショナル データベース プラットフォームに特化したデータベース移行サービスではありません。

Database Migration Service は顧客データを保存しますか?

いいえ。Database Migration Service は顧客データを保存しません。

安全

DMS のインスタンスが作成および実行されるときに、どのようなサービスが作成および使用されますか?

次のリストには、データ移行を実行するためにバックグラウンドで作成される可能性のある Azure リソースが含まれています。使用されるサービスは移行シナリオによって異なる場合があります。

  • Azure モニター
  • Azure VM
  • Azureストレージ
  • Azure サービス バス
  • Azure データファクトリー

メタデータとクライアント データはどのようにソースから抽出され、ターゲットに書き込まれますか?

DMS は内部的に、ネットワークの場所、認証情報、バックアップ ファイル、完了したタスクに関する情報を含むメタデータ ストアを維持します。アカウント キーなどの資格情報と選択されたフィールドは暗号化されます。テレメトリに含まれるテーブル名などのデータはハッシュ化されます。ユーザー名はサービス ログにプレーン テキストで表示されることがありますが、パスワードは決して表示されません。テレメトリは地域ごとにサイロ化され、保持ポリシーによって管理され、有効なトラブルシューティングの目的で Microsoft 社内の許可された担当者のみが利用できます。 Azure リソース名は、サーバー名やデータベース名と同様、Azure リソースのルールに従います。

DMS (クラシック) は、Azure Service Bus トピックを利用して、コンピューティング レイヤー間の通信を容易にします。 Azure Service Bus トピックは各 DMS インスタンスに固有であり、すべての個人データは暗号化されます。

Azure Virtual Machines 上の Azure SQL マネージド インスタンスと SQL Server

スキーマとデータは、バックアップと復元を使用して移行されます。お客様は、ネットワーク共有から復元するか、ストレージ コンテナーから直接復元するかを選択できます。 Windows パフォーマンス データを含むファイルは、オプションの (ただし強く推奨される) ワークロード サイズ設定の推奨事項を提供するために使用される場合があります。

Azure SQLデータベース

Azure SQL Database への移行は 2 つの手順で実行されます。最初のステップはスキーマの移行です。 DMS (クラシック) は、スキーマの移行に SQL 管理オブジェクト (SMO) を使用します。 2 番目のステップは、実際のデータ移行です。データ移行の実行には SqlBulkCopy が使用されます。 DMS はスキーマの移行をサポートしていません。データは Azure Data Factory を使用して移行されます。オプションですが、強くお勧めします。ワークロードのサイジングに関する推奨事項を提供するために、Windows パフォーマンス データを含むファイルを使用できます。

PostgreSQL 用 Azure データベース

このシナリオでは、エンドユーザーは、pg_dumppg_restoreコマンドラインユーティリティ。 PostgreSQL の変更データ キャプチャを構成する場合、DMS は内部的にpg_dumppg_restoreCDC の初期シードを実行します。データは、DMS インスタンスのみがアクセスできる暗号化された一時ストレージに保存されます。 Windows パフォーマンス データを含むファイルは、オプションの (ただし強く推奨される) ワークロード サイズ設定の推奨事項を提供するために使用される場合があります。

MySQL 用の Azure データベース

このシナリオでは、スキーマの抽出と移行は、DMS (クラシック) によって実行されます。mysql-net/MySqlConnector。可能な場合は、MySQL バイナリログ レプリケーションを使用して、データとスキーマの変更の両方をレプリケートします。カスタム コードは、バイナリログ レプリケーションが使用できない場合に変更を同期するために使用されます。

MongoDB から Azure Cosmos DB へ

DMS は、MongoDB からデータを抽出して Cosmos DB に挿入します。また、BSON または JSON ダンプからデータを抽出するオプションも提供します。

BSON ダンプの場合、DMS は次のデータを使用します。bsondumpBLOB コンテナー内の同じフォルダー内の形式。 DMS は、形式を使用してメタデータ ファイルのみを検索します。コレクション.メタデータ.json

JSON ダンプの場合、DMS は、含まれているデータベースにちなんで名付けられた BLOB コンテナー フォルダー内のファイルを読み取ります。各データベース フォルダー内では、DMS は、データサブフォルダー。 DMS は、metadataサブフォルダーと形式を使用して名前を付けますコレクション.jsonメタデータ用。

Oracle から Azure SQL データベースへ

このシナリオでは、AWR レポートまたは Windowsパフォーマンスファイルは、オプションの (ただし強く推奨される) ワークロード サイズ設定の推奨事項を提供するために使用されます。移行を実行するユーザーは、データベース スキーマ変換ツールキットを使用してスキーマ移行を実行し、ターゲット データベースを準備します。

Oracle から Azure Database for PostgreSQL へ

Oracle から Azure SQL Database への場合と同様に、このシナリオでは、AWR レポートまたは Windowsパフォーマンスファイルは、オプションの (ただし強く推奨される) ワークロード サイズ設定の推奨事項を提供するために使用されます。のora2pgライブラリは、移行を実行するユーザーがスキーマを抽出し、データを手動で移行するために使用されます。

パブリック エンドポイントが使用されていますか?

DMS (クラシック) は、顧客のネットワーク構成に依存します。移行元がプライベート エンドポイントを使用している場合は、プライベート エンドポイントを使用します。これが推奨構成です。パブリック エンドポイントが唯一の選択肢である場合は、パブリック エンドポイントを使用します。

DMS は、データ移動のスケジュール設定と調整のために、舞台裏で ADF を多用します。さらに、セルフホステッド統合ランタイムは、おそらく独自の ADF パイプラインにすでに使用しているランタイムと何ら変わりません。ファイアウォールとプロキシ サーバーの問題の詳細については、次を参照してください。セルフホステッド統合ランタイムを作成して構成する

転送中および保存中のデータはすべて暗号化されていますか?

すべての顧客データは保存時に暗号化されます。論理サーバー名やデータベース名などの一部のメタデータ、および移行ステータスや移行の進行状況は、暗号化されていないサービス ログに表示されます。

デフォルトでは、転送中のすべてのデータは TLS 1.2 暗号化で保護されます。古いバージョンの TLS を必要とするレガシー クライアントは、DMS (クラシック) ポータル ページで必要なバージョンを有効にする必要があります。 DMS の場合、セルフホステッド統合ランタイムがインストールされているマシンは、レガシー クライアントに対応するために必要な TLS 設定を許可するように構成できます。 SQL Server の TLS 構成の詳細については、次を参照してください。KB3135244 - Microsoft SQL Server の TLS 1.2 サポート

DMS および DMS (クラシック) を支えるすべての Azure サービスはプライベート エンドポイントを使用しますか?

可能な限り、プライベート エンドポイントが使用されます。プライベート エンドポイントがオプションでない場合は、サービス レイヤー間の通信にパブリック エンドポイントが使用されます。エンドポイントのタイプに関係なく、すべてのリソースは DMS の特定のインスタンス専用/スコープであり、一意の資格情報で保護されます。

DMS および DMS (クラシック) を支えるすべての Azure サービスは、保存データに CMK を使用しますか?

データ プレーンまたはコントロール プレーン内のデータの暗号化のためのカスタマー マネージド キーはサポートされていません。ただし、すべての顧客データは、サービスによって管理されるキーを使用して保存時に暗号化されます。論理サーバー名やデータベース名などの一部のメタデータ、および移行ステータスと進行状況は、暗号化されていない形式でサービス ログに表示されます。

転送中のデータにはどのような種類の暗号化が使用されますか?

デフォルトでは、転送中のすべてのデータは TLS 1.2 暗号化で暗号化されます。 DMS (クラシック) ポータル ページでは、古いバージョンの TLS をレガシー クライアントに使用できます。 DMS の場合、セルフホステッド統合ランタイムがインストールされているマシンを、レガシー クライアントに対応するための TLS 設定の管理を許可するように構成できます。 SQL Server の TLS 構成の詳細については、次を参照してください。KB3135244 - Microsoft SQL Server の TLS 1.2 サポート

CMK によって保護されていないデータはありますか?また、そのデータの種類は何ですか?たとえば、メタデータ、ログなどです。

カスタマー マネージド キーを使用してコントロール プレーンまたはデータ プレーン上のデータを暗号化する機能は公開していません。 DMS インスタンスが削除されると、サービス ログを除くすべての顧客データが削除されます。 DMS サービスのログは 30 日間のみ保存されます。

DMS はカスタマー マネージド キー (CMK) をどのようにサポートしていますか?

TDE

DMS は、カスタマー マネージド キー (CMK) の Azure SQL への移行をサポートしています。透過的データベース暗号化 (TDE)。 TDE キーを移行するための詳しい手順については、次を参照してください。チュートリアル:TDE 対応データベース (プレビュー) を Azure Data Studio の Azure SQL に移行する

セルの暗号化

セルレベルの暗号化はスキーマレベルで処理されます。スキーマ移行ツールは、セル レベルの暗号化の実装に必要な関数やストアド プロシージャを含むすべてのスキーマ オブジェクトを移行します。

常に暗号化

DMS は現在、個々のデータ行がソースとターゲット間で移行されるシナリオによる Always Encrypted の移行をサポートしていません。 Always Encrypted によって暗号化された列は、既存の SQL Server インスタンスから Azure SQL VM または Azure SQL Managed インスタンスへの移動など、バックアップ/復元を使用するシナリオで期待どおりに移行されます。

DMS は、データへのアクセスが位置認識アクセス制御によって制御されていることを保証しますか?

Azure で既に利用可能なものを超える位置認識アクセス制御は実装していません。 DMS インスタンスに関連付けられたすべてのデータは、DMS リソースと同じリージョンに存在します。

DMS は、ある環境内のデータが DMS を使用して別の環境に移動できないことをどのようにして保証しますか?

当社のサービスは、内部統制や業務プロセスが異なるさまざまな環境で利用されています。 DMS は、使用しているアカウントがアクセスできるあらゆる場所との間でデータを移動します。作業している環境の権限と内部制御を理解するのはユーザーの責任です。DMS がソースへの接続に使用しているアカウントが、目的のすべてのデータを表示するためのアクセス権を持っていることを確認することが特に重要です。ソースから移行されました。

DMS (クラシック) での VNET インジェクションはどのように使用されますか? Microsoft が私のネットワークにアクセスできるようになりますか?

VNET インジェクションこれは、Microsoft テナント内に存在する Azure リソースを、顧客テナントの下の VNet 内のサブネットに追加するアクションです。このアプローチは DMS で採用され、顧客のリソースへのアクセスを維持しながら、顧客に代わってコンピューティングを管理できるようにしました。ネットワークは顧客のサブスクリプションにあるため、Microsoft は開始、停止、削除、または展開コマンドを発行する以外に VM を管理できません。 VM へのアクセスが必要なその他すべての管理アクションには、顧客によるサポート リクエストと承認が必要です。

設定

Azure Database Migration Service を使用するための前提条件は何ですか?

データベース移行の実行時に Azure Database Migration Service がスムーズに実行されるようにするには、いくつかの前提条件が必要です。前提条件の一部は、サービスでサポートされるすべてのシナリオ (ソースとターゲットのペア) に適用されますが、他の前提条件は特定のシナリオに固有です。

サポートされているすべての移行シナリオに共通する Azure Database Migration Service の前提条件には、次のことが必要です。

  • Azure Resource Manager デプロイ モデルを使用して、Azure Database Migration Service 用の Microsoft Azure 仮想ネットワークを作成します。これにより、次のいずれかを使用してオンプレミスのソース サーバーへのサイト間接続が提供されます。エクスプレスルートまたVPN
  • 仮想ネットワークのネットワーク セキュリティ グループ ルールによって、ServiceBus、Storage、および AzureMonitor の ServiceTags のポート 443 がブロックされていないことを確認してください。仮想ネットワーク NSG トラフィック フィルタリングの詳細については、記事を参照してください。ネットワーク セキュリティ グループを使用してネットワーク トラフィックをフィルタリングする
  • ソース データベースの前でファイアウォール アプライアンスを使用する場合、Azure Database Migration Service が移行のためにソース データベースにアクセスできるようにファイアウォール ルールを追加する必要がある場合があります。

Azure Database Migration Service を使用して特定の移行シナリオを実行するために必要なすべての前提条件のリストについては、次の関連チュートリアルを参照してください。Azure Database Migration Service のドキュメント

移行のためのソース データベースへのアクセスに使用されるファイアウォール ルールのホワイトリストを作成できるように、Azure Database Migration Service の IP アドレスを見つけるにはどうすればよいですか?

Azure Database Migration Service が移行のためにソース データベースにアクセスできるようにするファイアウォール ルールを追加する必要がある場合があります。サービスの IP アドレスは動的ですが、ExpressRoute を使用している場合、このアドレスは企業ネットワークによってプライベートに割り当てられます。適切な IP アドレスを特定する最も簡単な方法は、プロビジョニングされた Azure Database Migration Service リソースと同じリソース グループを調べて、関連付けられたネットワーク インターフェイスを見つけることです。通常、ネットワーク インターフェイス リソースの名前は NIC プレフィックスで始まり、その後に固有の文字と数字のシーケンスが続きます (例: `NIC-jj6tnztnmarpsskr82rbndyp``)。このネットワーク インターフェイス リソースを選択すると、リソースの概要の Azure portal ページで許可リストに含める必要がある IP アドレスを確認できます。

SQL Server がリッスンしているポート ソースを許可リストに含める必要がある場合もあります。デフォルトではポート 1433 ですが、ソース SQL Server は他のポートでもリッスンするように構成されている場合があります。この場合、それらのポートも許可リストに含める必要があります。 SQL Server がリッスンしているポートは、動的管理ビュー クエリを使用して確認できます。

SELECT DISTINCT local_tcp_portFROM sys.dm_exec_connectionsWHERE local_tcp_port IS NOT NULL;

SQL Server エラー ログをクエリすることで、SQL Server がリッスンしているポートを確認することもできます。

USE master;GOxp_readerrorlog 0、1、N'サーバーはリッスンしています';GO

Microsoft Azure 仮想ネットワークをセットアップするにはどうすればよいですか?

仮想ネットワークの設定プロセスを順を追って説明する Microsoft チュートリアルが複数ありますが、公式ドキュメントはこの記事に記載されています。Azure仮想ネットワーク

使用法

Azure Database Migration Service を使用してデータベース移行を実行するために必要な手順の概要は何ですか?

一般的な単純なデータベース移行では、次のことを行います。

  1. ターゲット データベースを作成します。
  2. ソース データベースを評価します。
    • 同種の移行の場合は、次を使用して既存のデータベースを評価します。DMA
    • (競合ソースからの) 異種移行の場合は、既存のデータベースを評価します。SSMA。また、SSMA を使用してデータベース オブジェクトを変換し、スキーマをターゲット プラットフォームに移行します。
  3. Azure Database Migration Service のインスタンスを作成します。
  4. 移行するソース データベース、ターゲット データベース、およびテーブルを指定して移行プロジェクトを作成します。
  5. フルロードを開始します。
  6. 後続の検証を選択します。
  7. 実稼働環境を新しいクラウドベースのデータベースに手動で切り替えます。

トラブルシューティングと最適化

DMS で移行プロジェクトをセットアップしていますが、ソース データベースに接続するのが困難です。私は何をすべきか?

移行作業中にソース データベース システムへの接続に問題が発生した場合は、DMS インスタンスのセットアップに使用した仮想ネットワークの同じサブネットに仮想マシンを作成します。仮想マシンでは、UDL ファイルを使用して SQL Server への接続をテストしたり、Robo 3T をダウンロードして MongoDB 接続をテストしたりするなど、接続テストを実行できる必要があります。接続テストが成功した場合、ソース データベースへの接続に問題は発生しないはずです。接続テストが成功しない場合は、ネットワーク管理者に問い合わせてください。

Azure Database Migration Service が利用できない、または停止しているのはなぜですか?

ユーザーが Azure Database Migration Service (DMS) を明示的に停止した場合、またはサービスが 24 時間非アクティブな場合、サービスは停止状態または自動一時停止状態になります。いずれの場合も、サービスは利用できず、停止状態になります。アクティブな移行を再開するには、サービスを再起動します。

Azure Database Migration Service のパフォーマンスを最適化するための推奨事項はありますか?

このサービスを使用してデータベースの移行を高速化するために、いくつかのことを行うことができます。

  • サービス インスタンスを作成するときにマルチ CPU 汎用価格レベルを使用すると、サービスが複数の vCPU を利用して並列化と高速なデータ転送を行えるようになります。
  • データ移行操作中に一時的に Azure SQL Database ターゲット インスタンスをプレミアム レベルの SKU にスケールアップして、下位レベルの SKU を使用するときにデータ転送アクティビティに影響を与える可能性がある Azure SQL Database の調整を最小限に抑えます。

次のステップ

  • Azure データベース移行サービスとは

References

Top Articles
Latest Posts
Article information

Author: Terrell Hackett

Last Updated: 05/07/2023

Views: 5926

Rating: 4.1 / 5 (52 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Terrell Hackett

Birthday: 1992-03-17

Address: Suite 453 459 Gibson Squares, East Adriane, AK 71925-5692

Phone: +21811810803470

Job: Chief Representative

Hobby: Board games, Rock climbing, Ghost hunting, Origami, Kabaddi, Mushroom hunting, Gaming

Introduction: My name is Terrell Hackett, I am a gleaming, brainy, courageous, helpful, healthy, cooperative, graceful person who loves writing and wants to share my knowledge and understanding with you.