SQL Server を最新バージョンにアップグレードする

このガイドでは、Data Migration Assistant (DMA) を使用して、ユーザー データベースを以前のバージョンの SQL Server から SQL Server 2022 (16.x) にアップグレードする方法について説明します。

その他の移行ガイドについては、Azure Database Migration に関する記事を参照してください。

必須コンポーネント

移行プロジェクトを始める前に、関連する前提条件を解決しておくことが重要です。 SQL Server データベースのアップグレードに関してサポートされているバージョンと考慮事項をご確認ください。

移行を準備するには、次のものをダウンロードしてインストールします。

移行前

ソース環境がサポートされていて、前提条件が満たされていることを確認したら、移行前ステージを始めることができます。 プロセスには、移行する必要があるデータベースのインベントリの実施が含まれます。 次に、データベースで移行に関する潜在的な問題や障害を評価した後、発見されたものがある場合はすべて解決します。 次の 2 つのセクションでは、移行前の検出と評価のステップについて説明します。

発見

検出フェーズでは、既存のデータ ソースと、使用されている機能についての詳細を明らかにします。 移行について理解を深め、その計画を立てるのに役立ちます。 このプロセスには、ネットワークをスキャンして、組織のすべての SQL インスタンスと、使用されているバージョンおよび機能を特定することが含まれます。

MAP Toolkit を使用してインベントリ スキャンを作成するには、以下の手順のようにします。

検出ステージ

  1. MAP Toolkit をダウンロードしてインストールします。

  2. MAP Toolkit を実行します。

    1. MAP Toolkit を開き、左側のウィンドウで [データベース] を選択します。

      次の画面が表示されます。

      Screenshot of MAP Overview.

    2. [Create/Select database](データベースの作成/選択) を選択します。

      Screenshot of MAP Create/Select DB.

    3. [Create an inventory database](インベントリ データベースを作成する) を確実に選択し、データベースの名前と簡単な説明を入力して、 [OK] を選択します。

      Screenshot of MAP Create/Select DB Overview.

      次のステップでは、作成したデータベースからデータを収集します。

    4. [Collect inventory data](インベントリ データの収集) を選択します。

      Screenshot of MAP Collect Inventory Data.

    5. Inventory and Assessment (インベントリと評価) ウィザードで、 [SQL Server][SQL Server with Database Details](SQL Server とデータベースの詳細) を選択して、 [次へ] を選択します。

      Screenshot of MAP Inventory and Assessment Wizard.

    6. Microsoft 製品がホストされているコンピューターを検索する最適な方法のオプションを選択して、 [次へ] を選択します。

      Screenshot of MAP Inventory and Assessment Wizard Discovery Methods.

    7. 探索するシステムの資格情報を入力するか、新しい資格情報を作成し、 [次へ] を選択します。

      Screenshot of MAP Inventory and Assessment Wizard Discovery Credentials.

    8. 資格情報の順序を設定し、 [次へ] を選択します。

      Screenshot of MAP Inventory and Assessment Wizard Discovery Credentials Order.

      次に、検出する各コンピューターの資格情報を指定する必要があります。 コンピューターまたはマシンごとに一意の資格情報を使用するか、 [All Computer Credentials](すべてのコンピューターの資格情報) の一覧を使用することを選択できます。

    9. 資格情報を設定した後、 [保存] を選択してから、 [次へ] を選択します。

      Screenshot of MAP Inventory and Assessment Wizard Discovery All Computer Credentials.

    10. 選択の概要を確認し、 [完了] を選択します。

      Screenshot of MAP Inventory and Assessment Wizard Summary.

    11. データ収集概要レポートが作成されるまで数分待ちます (データベースの数によって異なります)。

      Screenshot of MAP Inventory and Assessment Wizard Summary Report.

    12. [閉じる] を選択します。

      ツールのメイン ウィンドウが表示され、これまでに完了したデータベース検出の概要が示されます。

    13. レポートの生成とデータの収集。

ツールの右上隅に表示される [オプション] ページを使用して、SQL Server の評価とデータベースの詳細に関するレポートを生成できます。

Screenshot of MAP Report Generation.

  1. 両方のレポートを生成するには、オプションを 1 つずつ選択します。

    Screenshot of MAP Report Generation Status.

評価と変換

データソースを特定した後、次のステップでは、オンプレミスの SQL Server インスタンスを評価します。 SQL Server インスタンスをアップグレードする前に、Data Migration Assistant (DMA) を使用してソース データベースを評価します。

DMA を使用して評価を作成するには、次の手順のようにします。

  1. DMA ツールをダウンロードしてインストールします。

  2. 新しい評価プロジェクトを作成します。

    1. 新規作成 (+) アイコンを選択し、 [評価] プロジェクトの種類を選択し、プロジェクト名を指定し、ソースとターゲットとして [SQL Server] を選択して、 [作成] を選択します。

      Screenshot of New Assessment.

    2. 移行先として計画していて評価を実行する必要があるターゲット SQL Server のバージョンを選択し、評価レポートの種類 ([互換性のイシュー][新機能のレコメンデーション]) のいずれかまたは両方を選択して、[次へ] を選択します。

      Screenshot of Report Types.

    3. [サーバーへの接続] で、接続先の SQL Server インスタンスの名前を指定し、認証の種類と接続のプロパティを指定して、 [接続] を選択します。

    4. [ソースの追加] パネルで評価するデータベースを選択して、 [追加] を選択します。

      Screenshot of Add databases.

    5. [Start Assessment](評価の開始) を選びます。

      評価の結果が作成されるまで待ちます。評価にかかる時間は、追加されたデータベースの数と各データベースのスキーマ サイズによって異なります。 使用可能になるとすぐに、データベースごとに結果が表示されます。

    6. 評価が完了したデータベースを選択し、スイッチャーを使用して [互換性のイシュー][機能に関する推奨事項] を切り替えます。

      Screenshot of Assessment results.

    7. [破壊的変更][動作変更][非推奨の機能] で識別されたすべての問題について、影響を受けるオブジェクトとその詳細を分析することにより、互換性の問題を確認します。

    8. [パフォーマンス][ストレージ][セキュリティ] の各領域で、機能に関する推奨事項を確認します。

      機能に関する推奨事項では、インメモリ OLTP と列ストア、Always Encrypted (AE)、動的データ マスク (DDM)、Transparent Data Encryption (TDE) などのさまざまな機能が対象になっています。

  3. 評価の結果を確認します。

    1. すべてのデータベースの評価が完了したら、 [レポートのエクスポート] を選択して、都合のよいときにデータを分析するため、JSON または CSV ファイルに結果をエクスポートします。

オプションの A/B テスト

このステップは省略可能と見なされ、移行を完了するために必要ではありません。 データベースの移行テストに DEA を使用するには、次の手順のようにします。

  1. DEA ツールをダウンロードしてインストールします。

  2. トレース キャプチャを実行します

    1. 左側のナビゲーション ツリーで、カメラ アイコンを選択して [All Captures](すべてキャプチャ) に移動します。

      Screenshot of New trace capture.

    2. 新しいキャプチャを開始するには、 [新しいキャプチャ] を選択します。

    3. キャプチャを構成するには、トレース名、期間、SQL Server インスタンス名、データベース名、および SQL Server が実行されているコンピューターにトレース ファイルを格納するための共有の場所を指定します。

      Screenshot of Provide trace capture inputs.

    4. [開始] を選択してトレース キャプチャを開始します。

  3. トレースの再生を実行します

    1. 左側のナビゲーション ツリーで、再生アイコンを選択して [All Replays](すべて再生) に移動します。

      Screenshot of New trace replay.

    2. 新しい再生を開始するには、 [New Replay](新しい再生) を選択します。

    3. 再生を構成するには、再生名、コントローラー マシン名、コントローラー上のソース トレース ファイルのパス、SQL Server インスタンス名、および SQL Server が実行されているコンピューターにターゲット トレース ファイルを格納するためのパスを指定します。

    4. [開始] を選択して、キャプチャの再生を開始します。

  4. 新しい分析レポートを作成します

    1. 左側のナビゲーション ツリーで、チェックリスト アイコンを選択して [分析レポート] に移動します。

      Screenshot of New Analysis Report.

    2. レポート データベースを格納する SQL Server に接続します。

      サーバーにあるすべてのレポートの一覧が表示されます。

    3. [新しいレポート] を選択します。

    4. レポートを構成するには、レポート名を指定し、ソースとターゲットの SQL Server インスタンスのトレースへのパスを指定します。

      Screenshot of Provide report analysis inputs.

  5. 分析レポートを確認します

    1. レポートの最初のページには、実験が実行されたターゲット サーバーのバージョンとビルド情報が表示されます。

      しきい値を使用すると、A/B テスト分析の感度や許容範囲を調整できます。

      Note

      既定では、しきい値は 5% に設定されており、5% 以上のパフォーマンス向上は "向上" として分類されます。 ドロップダウン リスト セレクターを使用すると、さまざまなパフォーマンスしきい値を使用してレポートを評価できます。

    2. 円グラフの個々のスライスを選択すると、パフォーマンスの詳細なメトリックが表示されます。

      Screenshot of Drill down report.

      パフォーマンス変更カテゴリの詳細ページには、そのカテゴリのクエリの一覧が表示されます。

      Screenshot of Drill down report queries.

    3. 個々のクエリを選択して、パフォーマンス概要統計、エラー情報、クエリ プラン情報を取得します。

      Screenshot of Summary Statistics.

Convert

移行するソース データベース インスタンスを評価した後、異種間の移行の場合は、ターゲット環境で動作するようにスキーマを変換する必要があります。 SQL Server の新しいバージョンへのアップグレードは同種間の移行と見なされるため、変換ステップは必要ありません。

移行の概要

必要な前提条件を満たし、移行前ステージに関連するタスクを完了したら、スキーマとデータの移行を実行できる状態になります。 移行とアップグレードが成功するということは、移行前ステージで検出されたすべての問題に対処したことを意味します。

DMA ツールで検出された互換性の問題を確認します。

システム データベースの msdb のバックアップを作成することにより、バックアップ ログ、メンテナンス プラン、およびジョブなどのその他の自動化されたタスクを保持します。

SQL Server Management Studio を使用して、リンク サーバーを表示します。 オブジェクト エクスプローラーで、サーバー オブジェクトを右クリックして一覧を展開します。

データと環境の複雑さによっては、追加の考慮事項が必要になる場合があります。

スキーマとデータの移行

データベースを評価した後の次のステップは、DMA を使用してスキーマとデータベースの移行プロセスを開始することです。

スキーマとデータの同期を移行する

DMA を使用して移行プロジェクトを作成するには、次の手順のようにします。

  1. 新しい移行プロジェクトを作成します

    1. [新規] アイコンを選択し、 [移行] プロジェクトの種類を選択し、ソースとターゲットの種類として [SQL Server] を選択して、 [作成] を選択します。

      Screenshot of New Migration.

    2. ソースとターゲットの SQL Server の接続の詳細を指定して、 [次へ] を選択します。

      Screenshot of Source & Target details.

    3. 移行するソースからデータベースを選択し、 [バックアップ操作用にソースおよびターゲット SQL Server からアクセスできる共有場所] を指定します。

      Note

      ソース SQL Server インスタンスを実行しているサービス アカウントに、共有場所への書き込み権限があること、およびターゲット SQL Server のサービス アカウントに、共有場所での読み取り権限があることを確認します。

      Screenshot of Select databases to migrate.

    4. [次へ] を選択し、移行するログインを選択してから、 [移行の開始] を選択します。

      Screenshot of Migration Logins.

    5. 次に、 [結果の表示] 画面で移行の進行状況を監視します。

  2. 移行結果を確認する

    1. 移行結果を .csv または .json ファイルに保存するには、 [レポートのエクスポート] を選択します。

    2. 保存したファイルでデータとログインの移行の詳細について確認し、プロセスが正常に完了したことを検証します。

データの同期と切り替え

移行でのダウンタイムを最小限にするため、1 回限りの移行が行われた後で移行元ソースの変更は続けられており、データとスキーマがターゲットと異なっている場合があります。 このプロセスの間に、ソース内のすべての変更をキャプチャし、準リアルタイムでターゲットに適用する必要があります。 ソース内の変更がターゲットに適用されたことを確認した後、ソースからターゲット環境に切り替えます。

このシナリオでは、最小限のダウンタイムでの移行のサポートはまだ利用できないため、データ同期と切り替えプランは現在は適用されません。

移行後の処理

移行ステージが正常に完了したら、一連の移行後タスクを実行し、すべてが可能な限り円滑かつ効率的に機能するようにします。 移行後の処理は、発生したデータの精度の問題を調整し、完全性を検証し、ワークロードでのパフォーマンスの問題に対処するために非常に重要です。

これらの問題、それらを軽減するための具体的な手順、および移行後の詳細については、「移行後の検証および最適化ガイド」を参照してください。

アプリケーションを検証する

データがターゲット環境に移行された後、以前にソースを使用していたすべてのアプリケーションは、ターゲットの使用を開始する必要があります。 これを実現するには、場合によってはアプリケーションの変更が必要になります。 データベースでテストを行い、移行後にアプリケーションが期待どおりに動作することを確認します。