SQL Server からの移行: 移行前
適用対象: Azure SQL Managed Instance Azure Virtual Machines 上 SQL Server Azure SQL データベース
この記事では、SQL Server から Azure SQL データベース、Azure SQL Managed Instance、または Azure VM 上の SQL Server に移行するための環境を準備する手順について説明します。
サポートされる移行元と移行先
オンプレミスまたは次で実行されている SQL Server を移行できます。
- SQL Server on Virtual Machines (VMs)。
- アマゾン ウェブ サービス (AWS) EC2。
- Amazon Relational Database Service (AWS RDS)。
- Compute Engine - Google Cloud Platform (GCP)。
この記事では、ユーザー データベースを SQL Server から Azure SQL に移行する前にユーザー データベースを検出し評価する方法について説明します。
- 移行の概要: SQL Server から Azure SQL Managed Instance
- 移行の概要: SQL Server から Azure VM 上の SQL Server
- 移行の概要:SQL Server から Azure SQL Database
その他の移行ガイドについては、「Azure データベースの移行ガイド」を参照してください。
ソース環境がサポートされていることを確認した後、移行前ステージから開始します。 既存のデータ ソースをすべて検出し、移行が可能かどうかを評価し、Azure クラウドの移行の阻害要素となる可能性のある問題を特定します。
移行の手順
このセクションでは、SQL Server を Azure SQL データベース、Azure SQL Managed Instance、または Azure VM 上の SQL Server に移行するための手順の概要を説明します。
SQL Server を Azure SQL Managed Instance に移行するには、次の手順に従います。
- Azure SQL Managed Instance で使用できる SQL Server データベース エンジンの機能を確認します。
- 移行方法と、それに対応するツールを選択します。
- 移行元の SQL Server インスタンスのリソース配分状況を判断するためのパフォーマンス ベースラインを作成します。 この手順は、移行後のパフォーマンスに影響しないように、適切なサイズの Managed Instance をデプロイするのに役立ちます。
- 組織で使用されているすべての SQL Server インスタンスと機能を検出します。
- SQL Server データベースを評価して、移行の阻害要因や互換性の問題を特定します。
- 移行先の SQL Managed Instance を作成します。 最適なサイズの Managed Instance をデプロイし、ここで Managed Instance の技術的特性 (仮想コア数、メモリ容量) とパフォーマンス レベル (Business Critical、General Purpose) を選択します。
- 移行元と移行先の両方にアクセスするための接続と適切なアクセス許可を設定します。
- データベースを移行します。ここでは、オフライン移行またはオンライン移行のオプションを使用してデータベースを移行します。
- アプリケーションを SQL Database Managed Instance に接続する
- アプリケーションの監視と修復を行い、期待されるパフォーマンスが得られることを確認します。
データベースが Azure SQL Managed Instance に対して準備が整っていないことを示す複数の阻害要素が評価で検出された場合は、Azure Virtual Machines 上 SQL Server を検討します。
発見
検出フェーズでは、ネットワークをスキャンして、組織で使用されているすべての SQL Server インスタンスと機能を特定します。
SQL Server インスタンスを検出するには、次のツールを使用します。
- Azure Migrate を使用して、オンプレミス サーバーの移行の適合性を評価し、パフォーマンスに基づくサイズ変更を行い、Azure でそれらのサーバーを実行するためのコストを見積もります。
- Microsoft Assessment and Planning Toolkit (MAP Toolkit) を使用して、現在の IT インフラストラクチャを評価します。 ツールキットには、移行計画のプロセスを簡略化するための強力なインベントリ、評価、およびレポート ツールが用意されています。
検出フェーズで使用できるツールの詳細については、「データ移行のシナリオで利用できるサービスとツール」を参照してください。
アクセス
Note
VMware 上の SQL Server データ資産全体を大規模に評価している場合は、Azure SQLアセスメントを作成して 、Azure SQL デプロイに関する推奨事項、ターゲットのサイズ設定、月単位の見積もりを取得します。
評価で複数の障害が発生した場合は、Azure SQL Managed Instance や Azure Virtual Machines 上の SQL Server などの代替手段として、Azure SQL の移行先のいずれかに移行することを検討してください。
Azure Data Studio を使用して評価する
Azure Data Studio 用の Azure SQL Azure SQL Migration 拡張機能は、評価を実行し、Azure レコメンデーションを取得して、オンプレミスの SQL Server データベースを Azure に移行する、ウィザード ベースのシームレスなエクスペリエンスを提供します。 移行の阻害要因や警告を強調表示する以外にも、拡張機能にはデータベースのパフォーマンス データを収集するための Azure レコメンデーションのオプションも含まれており、ワークロードのパフォーマンス ニーズを (最低価格で) 満たす適切なサイズの Azure SQL ターゲットを提案します。
Azure Data Studio の Azure SQL Migration 拡張機能を使用して、データベースを評価し、次の情報を取得できます。
重要
Azure SQL 移行拡張機能を使用してデータベースを評価するには、ソース SQL Server への接続に使用するログインが、sysadmin サーバー ロールのメンバーであるか、CONTROL SERVER アクセス許可を持っていることを確認してください。
Azure SQL Migration 拡張機能を使用してご自分の環境を評価するには、次の手順に従います。
- Azure Data Studio 用の Azure SQL Migration 拡張機能を開きます。
- 移行元の SQL Server インスタンスに接続します。
- Azure Data Studio の Azure SQL Migration ウィザードで、[Azure SQL に移行] ボタンを選択します
- 評価用のデータベースを選択し、[次へ] を選択します。
- Azure SQL の移行先を選択します。
- [表示/選択] を選択して、評価レポートを表示します。
- 移行のブロックと機能パリティの問題を探します。 評価レポートはファイルにエクスポートすることもできます。このファイルを、組織内の他のチームや担当者と共有できます。
- 移行後の作業が最小限になるようなデータベース互換レベルを特定します。
Azure SQL Migration 拡張機能を使用して Azure の推奨事項を取得するには、次の手順に従います。
- Azure Data Studio 用の Azure SQL Migration 拡張機能を開きます。
- 移行元の SQL Server インスタンスに接続します。
- Azure Data Studio の Azure SQL Migration ウィザードで、[Azure SQL に移行] ボタンを選択します
- 評価用のデータベースを選択し、[次へ] を選択します。
- Azure SQL の移行先を選択します。
- [Azure の推奨事項] セクションに移動し、[Azure の推奨事項を取得する] を選択します
- [Collect performance data now] (今すぐパフォーマンス データを収集する) を選択します。 パフォーマンス ログの格納先となるローカル コンピューター上のフォルダーを選択し、[Start] (開始) を選択します。
- 10 分後、Azure SQL Managed Instance のレコメンデーションが利用可能になった旨が Azure Data Studio から伝えられます。
- 移行先の Azure SQL パネルで Azure SQL Managed Instance カードを確認し、Azure SQL Managed Instance SKU の推奨事項を確認します
特定の Azure SQL 移行先のチュートリアルについては、次を参照してください。
- チュートリアル: DMSを使用して SQL Server を Azure SQL Managed Instance に移行する
- チュートリアル: SQL Server を Azure SQL データベース に移行する (オフライン)
Arc 対応の SQL Server を使用して評価する
Azure への移行のために SQL Server インスタンスを評価するには、Azure Arc 対応の SQL Server を使用します。現在プレビュー段階にあるこの機能では、Azure への移行の評価が自動的に生成され、移行の検出プロセスと準備状況の評価が簡略化されます。
Azure Arc 対応の SQL Server を使用してインスタンスを評価するには、次の手順に従います。
- SQL Server マシンを Azure Arc に自動的に接続します。
- Azure Extension for SQL Server (WindowsAgent.SqlServer) のバージョンが 1.1.2594.118 以降になっていることを確認します。
- Azure portal で、Azure Arc 対応の SQL Server のリソースに移動します。
- [移行]で[評価 (プレビュー)]を選択して[評価] ページを開き、結果を確認します。
詳細については、Azure arc 対応の SQL Server による、移行のためのインスタンスの評価に関するページをご覧ください。
スケーリングされた評価と分析
Azure Data Studio の Azure SQL Migration 拡張機能 と Azure Migrate は、スケーリングされた評価を実行し、分析のための評価レポートを統合することができます。
複数のサーバーとデータベースがあり、それらを大規模に評価および分析して、データ資産を広範囲に確認する必要がある場合は、以下のリンクを参照して詳細を確認してください。
- DMS で自動化を使用してデータベースを大規模に移行する (プレビュー)
- PowerShell を使用してスケーリングされた評価を実行する - Azure Migrate
- Power BI を使用して評価レポートを分析する - Azure Migrate
複数のデータベースの大規模な評価は、コマンドラインからRun Data Migration Assistantを使用して自動化することもできます。また、Azure Migrate に結果をアップロードして、さらに分析を行うことや、ターゲットの準備を行うこともできます。
次のいずれかのオプションに従ってスクリプトを使用することでプロセスを自動化できます。 スクリプトの使用法の詳細については、「自動化を使用してデータベースを大規模に移行する(プレビュー)」を参照してください。
- Az.DataMigration PowerShell モジュール
- az datamigration CLI 拡張機能
- コマンド ラインから Data Migration Assistant を実行する
大規模な資産全体の概要レポートの場合は、Data Migration Assistant の評価を Azure Migrate に統合することもできます。
アプリケーションを評価する
通常、データの保持と変更のためにユーザー データベースにアクセスするのはアプリケーション レイヤーです。 Data Migration Assistant は、アプリケーションのデータ アクセス レイヤーに 2 つの方法でアクセスします。
- ユーザー データベースの拡張イベントまたは SQL Server Profiler トレースをキャプチャして使用する。 また、Database Experimentation Assistantのトレースをキャプチャ を使用して、A/B テストにも使用できるトレース ログを作成することができます。
- Data Access Migration Toolkit (プレビュー) を使用する。これは、コード内の SQL クエリの検出と評価に役立ちます。また、一方から他方のデータベース プラットフォームにアプリケーション ソース コードを移行するために使用されます。 このツールは、C#、Java、XML、プレーン テキストなどの一般的なファイルの種類をサポートしています。 Data Access Migration Toolkit の評価を実行する方法については、Use Data Migration Assistant のブログ投稿を参照してください。
ユーザー データベースの評価中に、Data Migration Assistant を使用して、キャプチャされたトレース ファイルまたは Data Access Migration Toolkit ファイルをインポートします。