トランザクション レプリケーションとデータベース ミラーリング トポロジで SQL Server の修正プログラムを適用する方法

適用対象: SQL Server 2012 EnterpriseSQL Server 2012 StandardSQL Server 2012 Developer

はじめに


この資料には、次の特性を持つ Microsoft SQL Server のインスタンスに service pack および修正プログラムをインストールするのには次の手順が含まれています。
  • SQL Server のインスタンスには、両方のデータベース ミラーリング、およびトランザクション レプリケーション トポロジに参加している 1 つまたは複数のデータベースがあります。
  • データベースは、パブリッシャー、ディストリビューター、またはサブスクライバーとして参加しています。
ディストリビューション データベースをミラー化することはできません。ただし、あるプリンシパルと出版社のデータベース、またはデータベース ミラーリングの監視をします。

詳細


データベース ミラーリングまたはトランザクション レプリケーションに参加している SQL Server に修正プログラムを適用する手順は、次のマイクロソフト サポート技術情報 (KB) 記事に記載されています。

  • レプリケーション トポロジで SQL Server 2005 の修正プログラムを適用する方法を941232

  • データベース ミラーリングを使用するように構成されている SQL Server 2005 のインスタンスに service pack および修正プログラムをインストールする方法を926824

SQL Server が構成されている環境でミラーリング監視サーバーとディストリビューション サーバーが、同じサーバー インスタンス上にある場合に、データベース ミラーリングとトランザクション レプリケーションのトポロジの両方に参加するため、インストールは次の手順。
  1. ミラー
  2. 補助/ディストリビューター
  3. プリンシパルと出版社
  4. サブスクリプション サーバー
ミラーリング監視サーバーとディストリビューターが同じサーバー上にない場合は、インストール手順のとおり

  1. ミラー
  2. ミラーリング監視サーバー
  3. ディストリビューター
  4. プリンシパルと出版社
  5. サブスクリプション サーバー

手順


  1. データベース ミラーリング セッションにミラーリング監視サーバーがある場合、更新処理中に自動フェイル オーバー機能を無効にする必要があります。これを行うには、データベース ミラーリング セッションから監視サーバーを削除します。サーバーが他のデータベース ミラーリング セッションのパートナー サーバーでない場合は、ミラーリング監視サーバーの自動フェールオーバーを無効にする手順に従います。
  2. プリンシパルと出版社のデータベースに対するデータベース全体のバックアップを実行し、プリンシパル データベースでDBCC CHECKDBコマンドを実行します。
    注: この手順は省略可能、ただし、お勧めします。.
    この手順では、生産活動を妨げます。したがって、このステップの保守ウィンドウをスケジュールする必要があります。


  3. ミラー ・ サーバに、service pack または修正プログラムをインストールします。この時点で複数のサーバーを更新する必要があることに注意してください。

  4. ミラーリング監視サーバーに service pack または修正プログラムをインストールします。

  5. ディストリビューターでは、service pack または修正プログラムをインストールします。 ミラーリング監視サーバーと同じサーバー インスタンスには、ディストリビューターが存在する場合は、同時にこれらのサーバー ロールが更新されます。
    更新プログラムが適用されるときに、レプリケーションは一時的に停止します。 トランザクションは、更新の際に、パブリッシャーのトランザクション ログに残り、ディストリビューターで SQL サービスを再起動するとすぐに複製されます。
  6. データベース ミラーリング セッションを再開します。

    データベース ミラーリング セッションを再開する方法の詳細については、次の MSDN Web サイトを参照してください。
  7. ミラー サーバーがプリンシパルと出版社の役割を再開するために、ミラー ・ サーバへの手動フェイル オーバーを実行します。

    ミラー ・ サーバへのフェイル オーバーを手動で実行する方法の詳細については、SQL Server 2005 または SQL Server 2008 オンライン ブックで手動で失敗している上にセカンダリ ・ データベース」」を参照してください。
  8. プリンシパル サーバー上で DBCC CHECKDB コマンドを実行します。
    この手順は省略可能ですが、推奨です。
  9. データベース ミラーリング セッションを一時停止します。
  10. 新しいミラー サーバーに service pack または修正プログラムをインストールします。


    新しいミラー サーバーは、元のプリンシパルと出版社のサーバーと同じです。この時点で複数のサーバーを更新する必要があることに注意してください。
  11. データベース ミラーリング セッションを再開します。
  12. データベース ミラーリング セッションにミラーリング監視サーバーがある場合は、手順 1 で行った変更を元に戻します。

    これを行う方法の詳細については、次のマイクロソフトの Web 開発者ネットワーク (MSDN) サイトを参照してください。


    手順 1 で行った変更を元に戻すと、データベース ミラーリング セッションにミラーリング監視サーバーが追加されます。

  13. サブスクリプション サーバーに service pack または修正プログラムをインストールします。 この過程では、ディストリビューターからサブスクリプション サーバーへのレプリケーションを一時的に停止、およびトランザクションがディストリビューション データベースにキューに置かれます。 場合は、サブスクライバーがミラー化され、異なるミラーリング監視サーバーを使用して、ミラーリング監視サーバーの後に最初に、ミラー ・ サーバを更新するのには、1 ~ 3 の手順に従います。