Always On 可用性グループの概要

適用対象:SQL Server

このトピックでは、 SQL Server をサポートするように Always On 可用性グループ のインスタンスを構成する手順と可用性グループを作成、管理、および監視する手順について説明します。

推奨トピック

可用性グループを初めて作成する場合は、あらかじめ次のトピックに目を通しておくことをお勧めします。

AlwaysOn 可用性グループをサポートするための SQL Server のインスタンスの構成

手順 リンク
Always On 可用性グループを有効にする: 可用性グループに参加する Always On 可用性グループ のすべてのインスタンスで SQL Server 機能を有効にする必要があります。

前提条件: ホスト コンピューターは、Windows Server フェールオーバー クラスタリング (WSFC) ノードである必要があります。

その他の前提条件については、「AlwaysOn 可用性グループの前提条件、制限事項、および推奨事項 (SQL Server)」の「SQL Server インスタンスの前提条件と制限」を参照してください。
AlwaysOn 可用性グループの有効化と無効化
データベース ミラーリング エンドポイントを作成する (存在しない場合): 各サーバー インスタンスに、 データベース ミラーリング エンドポイントが存在することを確認します。 サーバー インスタンスでは、このエンドポイントを使用して、他のサーバー インスタンスから Always On 可用性グループ の接続を受信します。 データベース ミラーリング エンドポイントが存在するかどうかを確認するには、次のカタログ ビューを使用します。
sys.database_mirroring_endpoints

Windows 認証の場合。 以下を使用して、データベース ミラーリング エンドポイントを作成するには:

新しい可用性グループ ウィザード

Transact-SQL

SQL Server PowerShell

証明書の認証の場合。 以下を使用してデータベース ミラーリング エンドポイントを作成するには:Transact-SQL

新しい可用性グループの作成と構成

手順 リンク
可用性グループを作成します。 可用性グループに追加するデータベースをホストする SQL Server のインスタンスで可用性グループを作成します。

可用性グループを作成する SQL Server のインスタンスで、少なくとも初期プライマリ レプリカを作成します。 1 ~ 4 個のセカンダリ レプリカを指定できます。 可用性グループとレプリカのプロパティについては、「CREATE AVAILABILITY GROUP (Transact-SQL)」をご覧ください。

可用性グループ リスナーを作成することを強くお勧めします。

前提条件: 特定の可用性グループの可用性レプリカをホストする SQL Server のインスタンスは、同じ WSFC クラスターの別のノードに存在する必要があります。 唯一の例外は、別の WSFC クラスターに移行するときに、可用性グループは一時的に 2 つのクラスターにまたがることができるという点です。

その他の前提条件については、「AlwaysOn 可用性グループの前提条件、制限事項、および推奨事項 (SQL Server)」の「可用性グループの前提条件と制限」、「可用性データベースの前提条件と制限」、「SQL Server インスタンスの前提条件と制限」を参照してください。
可用性グループを作成する場合は、次のツールを使用できます。

新しい可用性グループ ウィザード

Transact-SQL

SQL Server PowerShell
セカンダリ レプリカの可用性グループへの参加 セカンダリ レプリカをホストしている SQL Server の各インスタンスに接続し、ローカル セカンダリ レプリカを可用性グループに参加させます。 可用性グループへのセカンダリ レプリカの参加

ヒント:新しい可用性グループ ウィザードを使用すると、この手順が自動化されます。
セカンダリ データベースを準備する: セカンダリ レプリカをホストしている各サーバー インスタンスで、RESTORE WITH NORECOVERY を使用してプライマリ データベースのバックアップを復元します。 セカンダリ データベースの手動準備

ヒント:新しい可用性グループ ウィザードを使用して、セカンダリ データベースを自動的に準備できます。 詳細については、「[最初のデータの同期を選択] ページ (AlwaysOn 可用性グループ ウィザード)」の「初期データの完全同期を使用するための前提条件」を参照してください。
セカンダリ データベースを可用性グループに参加させる: セカンダリ レプリカをホストしている各サーバー インスタンスで、各ローカル セカンダリ データベースを可用性グループに参加させます。 可用性グループに参加すると、セカンダリ データベースは対応するプライマリ データベースとのデータ同期を開始します。 可用性グループへのセカンダリ データベースの参加

ヒント:各セカンダリ レプリカにそれぞれセカンダリ データベースが存在する場合は、新しい可用性グループ ウィザードでこの手順を行うことができます。
[可用性グループ リスナーの作成] 可用性グループ リスナーをまだ作成していない場合、可用性グループを作成するときにこの手順を実行する必要があります。 可用性グループ リスナーの作成または構成 (SQL Server)
アプリケーション開発者にリスナーの DNS ホスト名を伝えます。 開発者は、可用性グループ リスナーに接続要求を送信するために、接続文字列でこの DNS 名を指定する必要があります。 詳細については、可用性グループ リスナー、クライアント接続、およびアプリケーションのフェールオーバー (SQL Server) に関するページを参照してください。 可用性グループ リスナーの作成または構成 (SQL Server) に関するページの「補足情報: 可用性グループ リスナーの作成後」を参照してください。
バックアップ ジョブを実行する場所を構成します。 セカンダリ データベースでバックアップを実行する場合は、自動バックアップ設定を考慮に入れてバックアップ ジョブのスクリプトを作成する必要があります。 可用性グループの可用性レプリカをホストする各サーバー インスタンスで、可用性グループのデータベースごとにスクリプトを作成します。 可用性レプリカでのバックアップの構成 (SQLServer) に関するページの「補足情報: セカンダリ レプリカでバックアップを構成した後」を参照してください。

可用性グループ、可用性レプリカ、可用性データベースの管理

Note

可用性グループとレプリカのプロパティについては、「CREATE AVAILABILITY GROUP (Transact-SQL)」をご覧ください。

既存の可用性グループの管理には、次のタスクが 1 つ以上含まれます。

タスク Link
可用性グループの 柔軟なフェールオーバー ポリシー を変更して、自動フェールオーバーを実行する条件を制御します。 このポリシーは、自動フェールオーバーが可能な場合にのみ関係します。 可用性グループの柔軟なフェールオーバー ポリシーの構成
計画的な手動フェールオーバーか、 強制フェールオーバーと通常呼ばれる強制手動フェールオーバー (データ損失の可能性あり) を実行します。 詳しくは、「フェールオーバーとフェールオーバー モード (AlwaysOn 可用性グループ)」をご覧ください。 計画的な手動フェールオーバーの実行

強制手動フェールオーバーの実行
一連の定義済みポリシーを使用して、可用性グループとレプリカおよびデータベースの正常性を表示します。 ポリシー ベースの管理を使用した可用性グループの正常性の表示

AlwaysOn グループ ダッシュボードの使用
セカンダリ レプリカを追加または削除します。 セカンダリ レプリカの追加

セカンダリ レプリカの削除
可用性データベースを中断または再開します。 セカンダリ データベースを中断すると、データベースを再開するまで現在の状態が維持されます。 データベースの中断

データベースの再開
データベースを追加または削除します。 データベースの追加

セカンダリ データベースの削除

プライマリ データベースの削除
可用性グループ リスナーを再構成または作成します。 可用性グループ リスナーの作成または構成
可用性グループを削除します。 可用性グループの削除
ファイルの追加操作のトラブルシューティングを行います。 これは、プライマリ データベースとセカンダリ データベースのファイル パスが異なる場合に必要となります。 失敗したファイルの追加操作のトラブルシューティング
可用性レプリカのプロパティを変更します。 可用性モードの変更

フェールオーバー モードの変更

バックアップの優先順位 (および自動バックアップ設定) の構成

読み取り専用アクセスの構成

読み取り専用ルーティングの構成

セッション タイムアウト期間の変更

可用性グループの監視

AlwaysOn 可用性グループのプロパティと状態を監視するには、次のツールを使用します。

ツール 簡単な説明 リンク
System Center Monitoring pack for SQL Server Monitoring pack for SQL Server (SQLMP) は、可用性グループ、可用性レプリカ、および可用性データベースを IT 管理者が監視するための推奨ソリューションです。 Always On 可用性グループ に特に関連する監視機能は次のとおりです。

可用性グループ、可用性レプリカ、および可用性データベースを多数のコンピューターから自動検出する機能。 これにより、 Always On 可用性グループ の在庫を簡単に追跡できます。

System Center Operations Manager (SCOM) の完全な警告機能とチケット機能。 これらの機能は、問題の早期解決を可能にする詳細な情報を提供します。

ポリシー ベースの管理 (PBM) を使用した AlwaysOn 正常性状態の監視のカスタム拡張機能。

正常性状態は、可用性データベースから可用性レプリカにロールアップされます。

System Center Operations Manager コンソールから Always On 可用性グループ を管理するカスタム タスク。
監視パック (SQLServerMP.msi) および SQL Server Management Pack Guide for System Center Operations Manager (SQLServerMPGuide.doc) をダウンロードするには、以下を参照してください。

System Center Monitoring pack for SQL Server
Transact-SQL Always On 可用性グループ のカタログ ビューと動的管理ビューは、可用性グループとそのレプリカ、データベース、リスナー、および WSFC クラスター環境に関する豊富な情報を提供します。 可用性グループの監視 (Transact-SQL)
SQL Server Management Studio [オブジェクト エクスプローラーの詳細] ペインには、接続先の SQL Server インスタンスでホストされている可用性グループの基本情報が表示されます。

ヒント: このペインを使用して、複数の可用性グループ、レプリカ、またはデータベースを選択し、選択したオブジェクトで一般的な管理タスク (可用性グループからの複数の可用性レプリカまたはデータベースの削除など) を実行します。
[オブジェクト エクスプローラーの詳細] を使用した可用性グループの監視
SQL Server Management Studio [プロパティ] ダイアログ ボックスを使用して、可用性グループ、レプリカ、またはリスナーのプロパティを表示し、必要に応じてその値を変更できます。 可用性グループのプロパティ

可用性レプリカのプロパティ

可用性グループ リスナーのプロパティ
システム モニター SQLServer:Availability Replica パフォーマンス オブジェクトには、可用性レプリカに関する情報を報告するパフォーマンス カウンターが含まれています。 SQL Server、可用性レプリカ
システム モニター SQLServer:Database Replica パフォーマンス オブジェクトには、特定のセカンダリ レプリカのセカンダリ データベースに関する情報を報告するパフォーマンス カウンターが含まれています。

SQL Server の SQLServer:Databases オブジェクトには、トランザクション ログの利用状況などを監視するパフォーマンス カウンターが含まれています。 可用性データベースでのトランザクション ログの利用状況の監視に関連性が高いカウンターは、 [Log Flush Write Time (ms)][Log Flushes/sec][Log Pool Cache Misses/sec][Log Pool Disk Reads/sec] 、および [Log Pool Requests/sec] です。
SQL Server、データベース レプリカ

SQL Server, Databases Object

関連コンテンツ

参照

Always On 可用性グループ (SQL Server)
Always On 可用性グループの概要 (SQL Server)
Always On 可用性グループのためのサーバー インスタンスの構成 (SQL Server)
可用性グループの作成と構成 (SQL Server)
可用性グループの監視 (SQL Server)
AlwaysOn 可用性グループの Transact-SQL ステートメントの概要 (SQL Server)
Always On 可用性グループの PowerShell コマンドレットの概要 (SQL Server)