Data Migration Assistant (DMA) がタスクに適しているかどうかを判断する

完了

あなたは自分の法律事務所で、自分の組織の SQL Server のデータベース一覧をまとめました。 あなたは、SQL Server 2019 にアップグレードする必要があるデータベースを特定しています。 すべてのデータベースは、オンプレミスでホストされています。 しかし、CTO からは、いくつかのインフラストラクチャの変更を準備するために、データベースの一部をクラウドに移動するように依頼されています。 CTO からは、アップグレードに必要なリソースを割り当てることができるように、必要な変更を詳しく説明したレポートも求められています。

あなたは、CTO が要求している期限までに、必要なチェックを行ってレポートを作成するのは不可能であることに気付きます。 ソリューションを探したところ、Azure MigrateMicrosoft Data Migration Assistant (DMA) ツールが役に立ちそうだと考えています。 今、あなたは DMA がタスクに最適なツールであるかどうかを判断する必要があります。

バックアップと復元を使用して SQL Server のアップグレード/移行を行う

データベースのバックアップを使用し、それをターゲット インスタンスに復元するのは、古いバージョンの SQL Server を SQL Server 2019 に移行する方法の 1 つです。 ただし、多数のデータベースを移行する必要がある場合、このプロセスは時間がかかる可能性があります。 手動でデータベースを移行する場合は、ユーザーのログインを個別に移行する必要があります。

Azure Migrate とは

Azure Migrate には、移行ツールのスイート用のダッシュボードがあります。 ポータルには、[サーバーの評価と移行][データベースの評価と移行][さらに探索] を実行するためのドキュメントやダウンロード リンクがあります。

Screenshot of the Azure portal's Azure Migrate Overview Get Started screen.

サーバーの評価と移行

サーバーを評価して移行するには、まずは自分のオンプレミス環境またはクラウド環境でマシンを検出する必要があります。 この検出の実行には、検出するマシンと同じドメインのマシンに Azure Migrate アプライアンスをインストールする必要があります。

Screenshot of the Azure portal's Azure Migrate Servers screen.

Azure Migrate アプライアンスを実行するマシンには、次の要件があります。

  • Windows Server 2016
  • 32 GB の RAM
  • 8 vCPU
  • 80 GB の空きディスク容量

データベースの評価と移行

データベースを評価して移行する Data Migration Assistant をインストールするリンクがあります。

さらに検索

[さらに検索] には、WebApp、仮想デスクトップ インフラストラクチャ、Data Box を使用したデータを評価および移行するツールへのリンクがあります。 Azure Data Box は、容量 100 TB のラグド物理ストレージ デバイスです。 このデバイスは顧客に送られ、顧客がデバイスにデータをバックアップすると、顧客が Microsoft にその Data Box デバイスを返送します。 データを大量に転送する場合、データを物理的に送信する方法が最も信頼性が高く、低コストです。

Screenshot of the Azure portal's Azure Migrate Overview Explore more screen.

Microsoft Data Migration Assistant とは

Data Migration Assistant start page

DMA は、SQL Server データベースのアップグレードを支援する一連のタスクを実行するスタンドアロン アプリケーションです。 それにより、移行前に時間をかけてデータベースで互換性の問題を調べるプロセスがなくなります。 DMA を "ソース" サーバーと "ターゲット" サーバーに接続することで、互換性のない変更、動作の変更、および非推奨の機能が検出されます。 オンプレミスの SQL Server ホストに移行している場合は、新機能の評価を実行して、データベースのパフォーマンスを向上させることのできるターゲット バージョンの機能を見つけることもできます。 Azure SQL Database への移行では、DMA によって機能のパリティがチェックされ、Azure では部分的にサポートされている機能またはサポートされていない機能が明らかになります

DMA でデータベースを評価するのに必要な時間は、ソース データベースのサイズによって異なります。 大きいデータベースでは、互換性と新機能の推奨の評価を個別に実行して、評価時間を短縮することができます。

データベースを評価した後、DMA を使用してターゲット サーバーに移行することができます。 移行プロセスには、次の要素を含めることができます。

  • データベース スキーマ: データベース内のすべてのオブジェクト (テーブル、インデックス、ストアド プロシージャ、ビュー、関数を含む)
  • データ
  • Windows ログインと SQL ログイン
  • データベース ユーザー
  • サーバーの役割

既定では、DMA では sa ログインは移動されませんが、他のすべての適確なログインは移動されます。 移行するログインを選択できますが、移行先のデータベースにこれらのログインが確実に正しくマップされているようにする必要があります。

サポートされているソース バージョンとターゲット バージョン

DMA を使用すると、オンプレミスのデータベースと Azure SQL Database を評価して移行することができます。 次のソース データベースがサポートされています。

  • SQL Server 2005
  • SQL Server 2008
  • SQL Server 2008 R2
  • SQL Server 2012
  • SQL Server 2014
  • SQL Server 2016
  • SQL Server 2017 on Windows

以下に移行できます。

  • SQL Server 2012
  • SQL Server 2014
  • SQL Server 2016
  • SQL Server 2017 on Windows または Linux
  • SQL Server 2019
  • Azure SQL Database

データベースをオンプレミスのターゲットにアップグレードする場合は、互換性の問題と新機能の推奨の評価を選択できます。 Azure SQL Database のアップグレードの場合は、DMA では互換性の問題が明らかになり、SQL Server 機能のパリティのカテゴリが提供されます。 DMA には、Azure に対する推奨と代替アプローチも含まれます。

レポートをエクスポートする

互換性またはアップグレードの評価を実行した後、後で参照できるように結果を CSV または JSON にエクスポートできます。 複数のサーバーからの評価レポートを結合して、Power BI でレポートを作成することができます。 このレポートを生成するには、PowerShell、Power BI Desktop、および Microsoft から提供されているテンプレートが必要です。

データベースのアップグレードの実行は、多数のデータベースを管理する管理者にとって時間のかかる作業になることがあります。 互換性と新機能の評価およびアップグレードは、常に時間外に実行するか、サーバーでのアクティビティが最も少ないときに実行する必要があります。 実際には、これらのタスクは短い時間でしか実行できない可能性があります。 DMA によって、各操作が一貫して完了することが保証されます。 既定では、移行中にログインやユーザーが見落とされなくなり、新しいサーバーに迅速に移行できます。

演習に備える

後の演習では、仮想マシンを使用します。 次のコマンドを実行してマシンを設定し、接続できるようにします。

  1. Cloud Shell で、VM を作成します。

    PASSWORD=$(openssl rand -base64 32)
    az vm create \
        --name SQL2019Server \
        --image "MicrosoftSQLServer:sql2019-ws2019:sqldev:latest" \
        --size Standard_D2s_v3 \
        --admin-username azureadmin \
        --admin-password $PASSWORD \
        --nsg-rule RDP \
        --resource-group <rgn>[Sandbox resource group]</rgn>
    echo $PASSWORD
    
  2. このパスワードは、演習で VM に接続するときに必要になるため、メモしておいてください。

  3. RDP ポートを開き、リモート デスクトップ接続で接続できるようにします。

    az vm open-port \
        --port 3389 \
        --name SQL2019Server \
        --resource-group <rgn>[Sandbox resource group]</rgn>
    
  4. VM に .NET Framework ランタイム バージョン 4.8 をインストールします。 これは、DMA バージョン 5.3 に必要です。 このコマンドは、完了までに数分かかる場合があります。

    az vm run-command invoke \
        --command-id RunPowerShellScript \
        --name SQL2019Server \
        --resource-group <rgn>[Sandbox resource group]</rgn> \
        --scripts "Invoke-WebRequest 'https://download.visualstudio.microsoft.com/download/pr/014120d7-d689-4305-befd-3cb711108212/0fd66638cde16859462a6243a4629a50/ndp48-x86-x64-allos-enu.exe' -OutFile 'Net4.8.exe'; ./Net4.8.exe /q /norestart /ChainingPackage ADMINDEPLOYMENT"
    
  5. VM を再起動してインストールを完了します。

    az vm restart --resource-group <rgn>[Sandbox resource group]</rgn> --name SQL2019Server
    

警告

サンドボックスを非アクティブ化しないでください。 このサンドボックスは、以降のユニットで引き続き使用されます。