次の方法で共有


移行の概要: Azure の VM 上の SQL Server への SQL Server

対象:Azure 仮想マシン上の SQL Server

SQL Serverを SQL Server on Azure Virtual Machines (VM) に移行するためのさまざまな移行戦略について説明します。

オンプレミスで実行されているSQL Serverを移行できます。

  • SQL Server オン バーチャル マシン
  • Amazon Elastic Compute Cloud (Amazon EC2)
  • Amazon リレーショナル データベース サービス (Amazon RDS)
  • Google Compute Engine

その他の移行ガイドについては、データベースの移行に関するページを参照してください。

概要

OS コントロールで使い慣れたSQL Server環境を使用する場合は> SQL Server on Azure Virtual Machines (VM)>、自動修正などのクラウド提供の機能を利用したいと考えています。

Azure ハイブリッド特典ライセンス モデルを使用して独自のライセンスを持ち込み、コストを節約するか、無料のセキュリティ更新プログラムを取得してSQL Server 2014 のサポートを延長します。

適切なターゲットの選択

Azure 仮想マシン Azureのさまざまなリージョンで実行され、さまざまなマシンサイズおよびAzureマネージド ディスクの種類を提供します。

SQL Server ワークロードの VM とストレージの適切なサイズを決定する場合は、SQL Server on Azure Virtual Machines.パフォーマンス ガイドライン>を参照してください。

データ資産内のすべてのワークロードの VM サイズとストレージ要件を決定するには、Performance-Based < c0>Azure Migrate Assessment を使用してサイズを設定する必要があります。 このオプションを使用できない場合は、パフォーマンスのベースラインを独自に作成する方法について次の記事を参照してください。

VM でのSQL Serverの正しいインストールと構成についても考慮する必要があります。 Azure SQL仮想マシン イメージ ギャラリー を使用する必要があります。これにより、適切なバージョン、エディション、オペレーティング システムを使用してSQL Server VM を作成できます。 また、このオプションにより、Azure VM が SQL Server resource プロバイダーに自動的に登録され、自動バックアップや自動修正などの機能が有効になります。

移行方法

Azure VM 上のSQL Serverのインスタンスにユーザー データベースを移行するには、migrateリフトアンドシフトの 2 つの移行戦略があります。

ご自分のビジネスに適したアプローチは通常、次の要因によって決まります。

  • 移行のサイズとスケール
  • 移行の速度
  • アプリケーションのコード変更のサポート
  • SQL Serverバージョン、オペレーティング システム、またはその両方を変更する必要があります。
  • 既存の製品のサポート ライフ サイクル
  • 移行中のアプリケーションのダウンタイム期間

次の表では、2 つの移行戦略の違いについて説明します。

移行戦略 説明 使用する場合
リフト アンド シフト リフト アンド シフト移行戦略を使用して、物理SQL Serverまたは仮想SQL Server全体を、オペレーティング システムまたはSQL Serverバージョンを変更せずに、Azure VM 上のSQL Serverのインスタンスに移動します。 リフト アンド シフトの移行を完了するには、Azure Migrateを参照してください。

ソースと宛先のサーバーでデータを同期している間、ソース サーバーはオンラインのままで要求に対応します。そのため、ほぼシームレスな移行が可能です。
単一から大規模な移行まで使用でき、データ センターの終了などのシナリオに適用可能です。

ユーザーの SQL データベースまたはアプリケーションへのコード変更は最小限または不要で、移行全体を速やかに進められます。

SSIS、SSRS、SSAS など、ビジネス インテリジェンス サービスを移行するために追加の手順が必要となることはありません。
移行 ターゲットのSQL Serverやオペレーティング システムのバージョンをアップグレードする場合は、移行戦略を使用します。

Azure MarketplaceからAzure VM を選択するか、ソース SQL Server バージョンと一致する準備済みのSQL Server イメージを選択します。
SQL Server on Azure Virtual Machinesに移行する必要がある場合、またはサポートされなくなったレガシ SQL Serverや OS バージョンをアップグレードする必要がある場合に使用します。

SQL Serverのアップグレードをサポートするために、アプリケーションまたはユーザー データベースの変更が必要になる場合があります。

移行のスコープ内にある場合は、 ビジネス インテリジェンス サービスの移行に関するその他の考慮事項が存在する可能性があります。

リフト アンド シフト

次の表では、リフトアンドシフト移行戦略で、SQL Server データベースをAzure VM 上のSQL Serverに移行する方法について詳しく説明します。

メソッド 最小ソース バージョン 最小ターゲット バージョン ソースのバックアップ サイズ制限 メモ
Azure Migrate SQL Server 2008 SP4 SQL Server 2012 SP4 Azure VM ストレージの制限 既存のSQL Serverを、そのままAzure VM上のSQL Serverインスタンスに移行する。 移行のワークロードは最大 35,000 VM にスケーリングできます。

サーバー データの同期中、ソース サーバーがオンラインのままで要求に対応するので、ダウンタイムが最小限に抑えられます。

自動化とスクリプティング: Azure Site Recovery スクリプト および Azure のスケーリングされた移行と計画の例

フェールオーバー クラスター インスタンス可用性グループの両方をAzure Migrateを使用してSQL ServerをAzure VMにリフト アンド シフトできるようになりました。

移行

推奨される移行方法は、ネイティブ SQL Server backup をローカルに取得し、ファイルをAzureにコピーすることです。 この方法では、2008 以降のすべてのバージョンのSQL Serverと大規模なデータベース バックアップ (>1 TB) に対して、より大きなデータベース (>1 TB) がサポートされます。 SQL Server 2014 以降のバージョンでは、SQL Server URL へのバックアップ は、Azureへの接続が良好な 1 TB 未満のデータベースの方が優れた方法です。

SQL ServerデータベースをAzure VM 上のSQL Serverのインスタンスに移行する場合は、アプリケーションのダウンタイム期間に影響するため、ターゲット サーバーに切り継ぐ必要がある場合に適したアプローチを選択することが重要です。

次の表では、SQL Server データベースを Azure VM 上のSQL Serverに移行するために使用できるすべての方法について詳しく説明します。

メソッド 最小ソース バージョン 最小ターゲット バージョン ソースのバックアップ サイズ制限 メモ
分散型可用性グループ SQL Server 2016 SQL Server 2016 Azure VM ストレージの制限 分散型可用性グループは、2 つの異なる可用性グループにまたがる、特殊な種類の可用性グループです。 分散型可用性グループに参加する可用性グループは、同じ場所にある必要がなく、クロスドメインに対応しています。

この方法により、ダウンタイムが最小限に抑えられます。 オンプレミスで構成された可用性グループがある場合に使用してください。

自動化とスクリプト: Transact-SQL (T-SQL)
ファイルへのバックアップ SQL Server 2008 SP4 SQL Server 2012 SP4 Azure VM ストレージの制限 これは、マシン間でデータベースを移動する際の、十分にテストされたシンプルな手法です。 圧縮を使用して、転送するバックアップのサイズを最小限に抑えます。

自動設定とscripting: T-SQLAzCopy から Blob Storage へ
URL へのバックアップ SQL Server 2012 SP1 CU2 SQL Server 2012 SP1 CU2 SQL Server 2016 の場合は 12.8 TB、それ以外の場合は 1 TB Azure ストレージを使用してバックアップ ファイルを VM に移動する別の方法。 圧縮を使用して、転送するバックアップのサイズを最小限に抑えます。

自動化とスクリプト: T-SQL またはメンテナンス プラン
SQL Server Management StudioのSQL Server移行コンポーネント SQL Server 2005 SQL Server 2012 SP4 Azure VM ストレージの制限 SQL Server移行コンポーネントは、オンプレミスSQL Server評価した後、新しいバージョンのSQL Serverにシームレスにアップグレードするか、Azure VM 上のSQL Serverに移行します。

FILESTREAM が有効なユーザー データベースでは使用しないようにしてください。

SQL ログインとWindows ログインを移行する機能が含まれています。
デタッチとアタッチ SQL Server 2008 SP4 SQL Server 2014 Azure VM ストレージの制限 Azure Blob Storage保存し>Azure VM 上のSQL Serverのインスタンスにアタッチする場合は、この方法を使用します。これは、非常に大規模なデータベースの場合や、バックアップと復元の時間が長すぎる場合に便利です。

自動設定とscripting: T-SQLAzCopy から Blob Storage へ
ログ配布 SQL Server 2012 SP4 (Windows のみ) SQL Server 2012 SP4 (Windows のみ) Azure VM ストレージの制限 ログ配布では、オンプレミスから、Azure VM 上のSQL Serverのインスタンスにトランザクション ログ ファイルがレプリケートされます。

そうすることで、フェイルオーバー時のダウンタイムを最小限に抑えられます。また、Always On 可用性グループを設定するよりも構成のオーバーヘッドが少なくなります。

自動化とスクリプト: T-SQL
オンプレミスのマシンをHyper-V VHDに変換し、Azure Blob Storageにアップロードして、アップロードしたVHDを使用して新しい仮想マシンをデプロイします。 SQL Server 2012 以上 SQL Server 2012 以上 Azure VM ストレージの制限 独自のSQL Server ライセンスを作成する場合、以前のバージョンのSQL Serverで実行されているデータベースを移行する場合、または他のユーザー データベースやシステム データベースに依存するデータベースの移行の一環としてシステム データベースとユーザー データベースを一緒に移行する場合に使用します。
Windows Import/Export Service を使用してハードドライブを発送する SQL Server 2012 以上 SQL Server 2012 以上 Azure VM ストレージの制限 Windows Import/Export Service を使用する (データベースが非常に大きい場合など) 手動コピー方法が遅すぎる場合

ネットワークのオプションが制限されていたり、なかったりする場合の大規模なデータ転送については、ネットワーク帯域幅が低速またはない場合の大規模なデータセットのデータ転送を参照してください。

ヒント

フェイルオーバー クラスター インスタンス可用性グループの両方のソリューションをAzure Migrateを使用してAzure VMにSQL Serverとして移行できます。

考慮事項

次に示すのは、移行方法の確認時に考慮すべき重要ポイントの一覧です。

  • 最適なデータ転送パフォーマンスを実現するには、圧縮されたバックアップ ファイルを使用して、Azure VM 上のSQL Serverのインスタンスにデータベースとファイルを移行します。 大規模なデータベースの場合、圧縮を行うほかに、バックアップ ファイルを小さいファイルに分割して、バックアップおよび転送時のパフォーマンスを高めます。

  • SQL Server 2014 以降から移行する場合は、ネットワーク転送中にデータを保護するためにバックアップを暗号化することを検討してください。

  • データベースの移行中のダウンタイムを最小限に抑えるには、Always On 可用性グループを使用します。

  • ネットワーク オプションが制限されているか、使用できない場合は、バックアップと復元、ディスク転送サービスなど、Azure で利用可能なオフライン移行方法を使用してください。

  • また、Azure VM 上のSQL Server上のSQL Serverのバージョンを変更するには、「change SQL Server edition」を参照>。

ビジネス インテリジェンス

ビジネス インテリジェンス サービスをデータベースの移行の範囲外SQL Server移行する場合は、他にも考慮事項が存在する可能性があります。

SQL Server Integration Services

次の 2 つの方法のいずれかを使用して、SSISDB の SQL Server Integration Services (SSIS) パッケージとプロジェクトAzure VM 上のSQL Serverに移行できます。

  • ソース SQL Server インスタンスから SSISDB をバックアップし、Azure VM 上の SQL Server に復元します。 これにより、SSISDB のパッケージが SSIS カタログに復元されます。

  • デプロイ オプション のいずれかを使用して、Azure VM 上のターゲット SQL Serverに SSIS パッケージを再デプロイ>します。

SSIS パッケージをパッケージ配置モデルとしてデプロイしている場合は、移行する前に変換できます。 詳細については、プロジェクト変換のチュートリアルを参照してください。

SQL Server Reporting Services

SQL Server Reporting Services (SSRS) レポートをAzure VM 上のターゲット SQL Serverに移行するには、「Reporting Services インストール (ネイティブ モード)を参照してください。

または、SSRS レポートをPower BIのページ分割されたレポートに移行することもできます。 レポートの準備と移行には、RDL Migration ツールが役立ちます。 Microsoft は、レポート定義言語 (RDL) レポートを SSRS サーバーからPower BIに移行するために、このツールを開発しました。 GitHubで利用でき、移行シナリオのエンドツーエンドのチュートリアルが文書化されています。

SQL Server Analysis Services

SQL Server Analysis Services データベース (多次元または表形式モデル) は、次のいずれかのオプションを使用して、ソース SQL Serverから Azure VM 上のSQL Serverに移行できます。

  • SSMS の対話的使用
  • 分析管理オブジェクト (AMO) のプログラム的使用
  • スクリプトによる XMLA (XML for Analysis) の使用

詳細については「Analysis Services データベースを移行する」をご覧ください。

または、新しい XMLA 読み取り/書き込みエンドポイントを使用して、オンプレミスの Analysis Services 表形式モデルを Azure Analysis Services または Power BI Premium に移行することを検討

サーバー オブジェクト

ソース SQL Serverのセットアップによっては、SQL Server Management Studio を使用して Transact-SQL (T-SQL) でスクリプトを生成して、それらを Azure VM 上のSQL Serverに移行するために手動で介入する必要がある他のSQL Server機能が存在する場合があります。次に、ターゲット SQL ServerでスクリプトAzure実行します。 一般的に使用される機能の一部を次に示します:

  • ログインとロール
  • リンク サーバー
  • 外部データ ソース
  • エージェント ジョブ
  • 警告
  • データベースメール
  • レプリケーション

移動する必要があるメタデータとサーバー オブジェクトの完全な一覧については、「データベースを別のサーバーで使用できるようにするときのメタデータの管理」を参照してください。

サポートされているバージョン

Azure VM での SQL Server データベースの移行を準備する際は、サポートされている SQL Server のバージョンを必ず検討してください。 Azure VM で現在サポートされているSQL Serverバージョンの一覧については、Azure VM のSQL Serverを参照してください。

移行資産

詳細については、実際の移行プロジェクト用に開発された次のリソースを参照してください。

資産 説明
データ ワークロード評価モデルとツール このツールを使用すると、特定のワークロードに対して、推奨される "最適な" ターゲット プラットフォーム、クラウドの準備状況、アプリケーションとデータベースの修復レベルがわかります。 シンプルなワンセレクトの計算とレポート生成機能があり、自動化された均一なターゲット プラットフォームの決定プロセスが用意されているので、大規模な不動産評価を加速させることができます。
Logman を使用した Perfmon データ収集の自動化 ベースライン パフォーマンスを把握するための Perfmon データを収集して、移行ターゲットのレコメンデーションに役立てるツール。 このツールは、logman.exe を使用して、リモート SQL Serverで設定されたパフォーマンス カウンターを作成、開始、停止、および削除するコマンドを作成します。
Multiple-SQL-VM-VNet-ILB このホワイトペーパーでは、SQL Server Always On 可用性グループ構成で複数のAzure仮想マシンを設定する手順について説明します。
Azureリージョンごとの Ultra Disk をサポートする仮想マシン これらの PowerShell スクリプトは、Ultra Disks をサポートする Azure 仮想マシンをサポートするリージョンの一覧をプログラムによって取得するためのオプションを提供します。

データ SQL エンジニアリング チームが、これらのリソースを開発しました。 このチームの主要なチャーターは、データ プラットフォーム移行プロジェクトの複雑な最新化のブロックを解除し、Microsoft の Azure データ プラットフォームに高速化することです。