Share via


データベース ミラーリングおよびフェールオーバー クラスタリング

更新 : 2005 年 12 月 5 日

フェールオーバー クラスタは、リソース グループと呼ばれる Microsoft Cluster Service (MSCS) クラスタ グループに含まれる、クラスタのノードに参加している物理ディスクのうち、1 つ以上を組み合わせたものです。リソース グループは、SQL Server のインスタンスをホストするフェールオーバー クラスタ インスタンスとして構成されます。SQL Server フェールオーバー クラスタ インスタンスはネットワーク上では 1 台のコンピュータのように認識されますが、あるノードが利用できなくなった場合に、別のノードへフェールオーバーする機能を備えています。詳細については、「フェールオーバー クラスタリング」を参照してください。

フェールオーバー クラスタにより、Microsoft SQL Server インスタンス全体の高可用性が確保されます。一方、データベース ミラーリングは、1 つのデータベースの高可用性を確保します。データベース ミラーリングは、フェールオーバー クラスタ間のほか、フェールオーバー クラスタと非クラスタ化ホスト間でも機能します。

ms191309.note(ja-jp,SQL.90).gifメモ :
データベース ミラーリングの概要については、「データベース ミラーリングの概要」を参照してください。

ミラーリングおよびクラスタリング

通常、ミラーリングとクラスタリングを併せて使用する場合は、プリンシパル サーバーもミラー サーバーもクラスタ上に配置し、プリンシパル サーバーとミラー サーバーをそれぞれ異なるクラスタのフェールオーバー クラスタ インスタンス上で実行します。ただし、パートナーの一方をクラスタ内のフェールオーバー クラスタ インスタンスに配置し、もう一方を別の非クラスタ化コンピュータに配置するというミラーリング セッションを確立することもできます。

クラスタのフェールオーバーによりプリンシパル サーバーが一時的に利用できなくなった場合、データベースへのクライアント接続は切断されます。クラスタのフェールオーバーが完了すると、クライアントは、動作モードに応じて同じクラスタ、別のクラスタ、または非クラスタ化コンピュータ上のプリンシパル サーバーに再接続できるようになります。

クラスタ化環境でデータベース ミラーリングをどのように構成するかを決める場合は、ミラーリングで使用する動作モードが大きな意味を持ちます。

自動フェールオーバーを伴う高い安全性モードのセッション

自動フェールオーバーを伴う高い安全性モードのデータベースをミラー化する場合は、パートナーに 2 クラスタ構成を使用することをお勧めします。この構成であれば、最高の可用性が得られます。ミラーリング監視サーバーは、別のクラスタに配置するか、非クラスタ化コンピュータに配置できます。

現在のプリンシパル サーバーを実行しているノードで障害が発生した場合は、クラスタの別のノードへのフェールオーバーが進められている間に、データベースの自動フェールオーバーが数秒のうちに開始されます。データベース ミラーリング セッションは、もう一方のクラスタにあるミラー サーバー、または非クラスタ化コンピュータにフェールオーバーされ、これまでミラー サーバーであったサーバーがプリンシパル サーバーになります。新しいプリンシパル サーバーは、可能な限り短時間でそのサーバーにあるデータベースのコピーをロールフォワードし、プリンシパル データベースとしてこれをオンラインにします。クラスタのフェールオーバーが完了すると (通常、数分で完了します)、それまでプリンシパル サーバーであったフェールオーバー クラスタ インスタンスがミラー サーバーになります。詳細については、「同期データベース ミラーリング (高い安全性モード)」を参照してください。

次の図は、ミラーリング監視サーバー (自動フェールオーバーをサポート) を配置した高い安全性モードで運用されているミラーリング セッションにおけるクラスタ間の自動フェールオーバーを表しています。

クラスタでのフェールオーバー

ミラーリング セッションを構成する 3 つのサーバー インスタンスが、それぞれ異なるクラスタ Cluster_ACluster_B、および Cluster_C に配置されています。各クラスタでは、SQL Server の既定のインスタンスが SQL Server フェールオーバー クラスタ インスタンスとして実行されています。ミラーリング セッションが開始されると、Cluster_A のフェールオーバー クラスタ インスタンスはプリンシパル サーバー、Cluster_B のフェールオーバー クラスタ インスタンスはミラー サーバー、Cluster_C のフェールオーバー クラスタ インスタンスはミラーリング監視サーバーとして機能します。ここで、Cluster_A でのアクティブなノードで障害が発生し、プリンシパル サーバーが利用できなくなったとします。

クラスタがフェールオーバーを行う前に、ミラーリング監視サーバーを併用することにより、プリンシパル サーバーが使用できなくなったことがミラー サーバーによって検出されます。ミラー サーバーは、可能な限り短時間でこのサーバーにあるデータベースをロールフォワードし、プリンシパル データベースとしてこれをオンラインにします。Cluster_A のフェールオーバーが完了すると、これまでのプリンシパル サーバーは現在はミラー サーバーになり、このサーバーのデータベースが Cluster_B の現在のプリンシパル データベースと同期されます。

自動フェールオーバーを伴わない高い安全性モードのセッション

自動フェールオーバーを伴わない高い安全性モードのデータベースをミラー化する場合は、現在のプリンシパル サーバーを実行しているノードで障害が発生すると、クラスタ内の別のノードがプリンシパル サーバーとして機能するようになります。クラスタが利用できない間は、データベースも利用できないことに注意してください。詳細については、「同期データベース ミラーリング (高い安全性モード)」を参照してください。

高パフォーマンス モードのセッション

高パフォーマンス モードのデータベースをミラー化する場合は、プリンシパル サーバーをクラスタ上のフェールオーバー クラスタ インスタンスに、ミラー サーバーをリモートの非クラスタ化サーバーに配置することをお勧めします。クラスタが別のノードにフェールオーバーした場合、ミラーリング セッションではフェールオーバー クラスタ インスタンスが引き続きプリンシパル サーバーとして機能します。クラスタ全体に問題がある場合、ミラー サーバーにサービスを強制できます。詳細については、「非同期データベース ミラーリング (高パフォーマンス モード)」を参照してください。

新しい SQL Server 2005 フェールオーバー クラスタをセットアップするには

データベース ミラーリングをセットアップするには

参照

概念

フェールオーバー クラスタリング

その他の技術情報

データベース ミラーリング

ヘルプおよび情報

SQL Server 2005 の参考資料の入手