サーバー インスタンスを SQL Server 2014 にアップグレードする場合、 ローリング アップグレードと呼ばれる順次アップグレードを実行することで、ミラー化された各データベースのダウンタイムを 1 回の手動フェールオーバーのみに減らすことができます。 ローリング アップグレードとは、ミラーリング セッションで現在ミラー サーバーとして機能しているサーバー インスタンスのアップグレード、ミラー化されたデータベースの手動フェールオーバー、以前のプリンシパル サーバーのアップグレード、およびミラーリングの再開を含む、最も簡単な形式のマルチステージ プロセスです。 実際には、正確なプロセスは、オペレーティング モードと、アップグレードするサーバー インスタンスで実行されているミラーリング セッションの数とレイアウトによって異なります。
注
ローリング アップグレードを実行して Service Pack または修正プログラムをインストールする方法については、「 ミラー化されたデータベースのダウンタイムを最小限に抑えたシステムへの Service Pack のインストール」を参照してください。
推奨される準備 (ベスト プラクティス)
ローリング アップグレードを開始する前に、次のことをお勧めします。
少なくとも 1 つのミラーリング セッションで手動フェールオーバーを実行します。
注
手動フェールオーバーのしくみについては、「 データベース ミラーリング セッション中のロールの切り替え (SQL Server)」を参照してください。
データを保護する:
すべてのプリンシパル データベースでデータベースの完全バックアップを実行します。
すべてのプリンシパル データベースで DBCC CHECKDB コマンドを実行します。
ローリング アップグレードのステージ
ローリング アップグレードの具体的な手順は、ミラーリング構成の動作モードによって異なります。 ただし、基本的なステージは同じです。
注
動作モードの詳細については、「 データベース ミラーリングの動作モード」を参照してください。
次の図は、各動作モードのローリング アップグレードの基本的なステージを示すフローチャートです。 この図の後に、対応する手順について説明します。
重要
サーバー インスタンスは、同時ミラーリング セッションで異なるミラーリング ロール (プリンシパル サーバー、ミラー サーバー、またはミラーリング監視) を実行している可能性があります。 この場合は、基本的なローリング アップグレード プロセスを適宜調整する必要があります。 詳細については、「 データベース ミラーリング セッション中のロールの切り替え (SQL Server)」を参照してください。
セッションを高パフォーマンス モードから高い安全性モードに変更するには
ミラーリング セッションがハイ パフォーマンス モードで実行されている場合は、ローリング アップグレードを実行する前に、自動フェールオーバーなしで動作モードを高い安全性に変更します。
重要
ミラー サーバーがプリンシパル サーバーから地理的に離れている場合は、ローリング アップグレードが不適切である可能性があります。
SQL Server Management Studio で、[データベースのプロパティ] ダイアログ ボックスの [ミラーリング] ページを使用して、オペレーティング モード オプションを [自動フェールオーバーなしで高い安全性 (同期)] に変更します。 このページにアクセスする方法については、「 データベース ミラーリング セキュリティの構成ウィザードの開始 (SQL Server Management Studio)」を参照してください。
Transact-SQL: トランザクションの安全性を FULL に設定します。 詳細については、データベース ミラーリング セッションでのトランザクションの安全性の変更 (Transact-SQL) を参照してください。
セッションから証人を削除するには
ミラーリング セッションにミラーリング監視サーバーが含まれる場合は、ローリング アップグレードを実行する前にミラーリング監視サーバーを削除することをお勧めします。 それ以外の場合、ミラー サーバー インスタンスがアップグレードされるときに、データベースの可用性は、プリンシパル サーバー インスタンスに接続されたままのミラーリング監視サーバーに依存します。 証人を削除した後、ローリング アップグレード プロセス中、データベースのダウンタイムのリスクなしにいつでもアップグレードできます。
注
詳細については、「クォーラム: 監視サーバーがデータベース可用性に与える影響(データベースミラーリング)」を参照してください。
ローリング アップグレードを実行するには
ダウンタイムを最小限に抑えるために、ローリング アップグレードを開始するには、すべてのミラーリング セッションで現在ミラー サーバーであるミラーリング パートナーを更新することをお勧めします。 この時点で、複数のサーバー インスタンスを更新する必要がある場合があります。
注
ミラーリング監視サーバーは、ローリング アップグレード プロセスの任意の時点でアップグレードできます。 たとえば、サーバー インスタンスがセッション 1 のミラー サーバーであり、セッション 2 のミラーリング証人サーバーである場合は、ここでサーバー インスタンスをアップグレードできます。
最初にアップグレードするサーバー インスタンスは、次のように、ミラーリング セッションの現在の構成によって異なります。
サーバー インスタンスが、すべてのミラーリング セッションで既にミラー サーバーである場合は、サーバー インスタンスを新しいバージョンにアップグレードします。
すべてのサーバー インスタンスが現在、任意のミラーリング セッションのプリンシパル サーバーである場合は、最初にアップグレードするサーバー インスタンスを 1 つ選択します。 次に、各プリンシパル データベースを手動でフェールオーバーし、そのサーバー インスタンスをアップグレードします。
アップグレード後、サーバー インスタンスは各ミラーリング セッションに自動的に再参加します。
ミラー サーバー インスタンスがアップグレードされたミラーリング セッションごとに、セッションが同期されるまで待ちます。 次に、プリンシパル サーバー インスタンスに接続し、セッションを手動でフェールオーバーします。 フェールオーバー時に、アップグレードされたサーバー インスタンスがそのセッションのプリンシパル サーバーになり、前のプリンシパル サーバーがミラー サーバーになります。
この手順の目的は、別のサーバー インスタンスがパートナーであるすべてのミラーリング セッションでミラー サーバーになることです。
アップグレードされたサーバー インスタンスにフェールオーバーした後の制限。
以前のサーバー インスタンスから SQL Server 2014 サーバー インスタンスにフェールオーバーした後、データベース セッションは中断されます。 他のパートナーがアップグレードされるまで再開できません。 ただし、プリンシパル サーバーは引き続き接続を受け入れ、プリンシパル データベースでのデータ アクセスと変更を許可しています。
注
新しいミラーリング セッションを確立するには、サーバー インスタンスがすべて同じバージョンの SQL Server を実行している必要があります。
フェールオーバー後は、theprincipal データベースで DBCC CHECKDB コマンドを実行することをお勧めします。
パートナーであるすべてのミラーリング セッションで、ミラー サーバーになった各サーバー インスタンスをアップグレードします。 この時点で複数のサーバーを更新する必要がある場合があります。
重要
複雑なミラーリング構成では、一部のサーバー インスタンスは、1 つ以上のミラーリング セッションの元のプリンシパル サーバーである可能性があります。 関係するすべてのインスタンスがアップグレードされるまで、これらのサーバー インスタンスに対して手順 2 から 4 を繰り返します。
ミラーリング セッションを再開します。
注
ミラーリングの証人がアップグレードされ、ミラーリング セッションに再度追加されるまで、自動フェールオーバーは機能しません。
すべてのミラーリング セッションで証人として動作している残りのサーバー インスタンスをアップグレードします。 アップグレードされたミラーリング監視サーバーがミラーリング セッションに再び参加すると、自動フェールオーバーが再び可能になります。 この時点で複数のサーバーを更新する必要がある場合があります。
セッションを高パフォーマンス モードに戻すには
必要に応じて、次のいずれかの方法を使用して高パフォーマンス モードに戻ります。
SQL Server Management Studio: [データベースのプロパティ] ダイアログ ボックスの [ミラーリング] ページを使用して、[オペレーティング モード] オプションを [高パフォーマンス (非同期)] に変更します。
Transact-SQL の場合: ALTER DATABASEを使用してトランザクションの安全性を OFF に設定します。
ミラーリング セッションにミラーリング監視サーバーを再度追加するには
必要に応じて、高い安全性モードでミラーリング監視サーバーを各ミラーリング セッションに再確立します。
ミラーリング監視サーバーを返すには
こちらもご覧ください
ALTER DATABASE データベース ミラーリング (Transact-SQL)
BACKUP (Transact-SQL)
ミラー化されたデータベースの状態を表示する (SQL Server Management Studio)
データベース ミラーリング (SQL Server)
ミラー化されたデータベースのダウンタイムを最小限に抑えたシステムへの Service Pack のインストール
データベース ミラーリング セッション中のロールの切り替え (SQL Server)
データベース ミラーリング セッションでのサービスの強制 (Transact-SQL)
データベース ミラーリング モニターの起動 (SQL Server Management Studio)
データベース ミラーリングの動作モード