適用対象:SQL Server - Windows のみ
Azure SQL Managed Instance
サーバー インスタンスが Always On 可用性グループ またはデータベース ミラーリングに参加するには、専用の データベース ミラーリング エンドポイントが必要です。 このエンドポイントの用途は特殊で、他のサーバー インスタンスからの接続を受信するためにのみ使用されます。 特定のサーバー インスタンスでは、他のサーバー インスタンスに対するすべての Always On 可用性グループ またはデータベース ミラーリング接続では、単一のデータベース ミラーリング エンドポイントが使用されます。
データベース ミラーリング エンドポイントでは、伝送制御プロトコル (TCP) を使用して、データベース ミラーリング セッションに参加するサーバー インスタンス間、または可用性レプリカをホストするサーバー インスタンス間でメッセージを送受信します。 データベース ミラーリング エンドポイントでは、一意な TCP ポート番号でリッスンします。
プリンシパル サーバーまたはプライマリ レプリカへのクライアント接続では、データベース ミラーリング エンドポイントは使用されません。
Note
データベース ミラーリング機能は、将来のバージョンの Microsoft SQL Server では削除される予定です。 新しい開発作業ではこの機能の使用を避け、現在データベース ミラーリングを使用しているアプリケーションでは、代わりに Always On 可用性グループ を使用するようにアプリケーションを修正することを計画してください。
サーバー ネットワーク アドレス
サーバー インスタンスのネットワーク アドレス (サーバー インスタンスの サーバー ネットワーク アドレス または エンドポイント URL) には、そのサーバー インスタンスのホスト コンピューターのシステム名とドメイン名以外に、そのサーバー インスタンスのエンドポイントのポート番号も含まれています。 このポート番号は、特定のサーバー インスタンスを一意に識別します。
次の図に、同じサーバー上の 2 つのサーバー インスタンスを一意に識別するしくみを示します。 どちらのサーバー インスタンスのサーバー ネットワーク アドレスにも、同じシステム名 MYSYSTEMとドメイン名 Adventure-Works.MyDomain.comが含まれています。 システム側でサーバー インスタンスまでルーティングできるように、サーバー ネットワーク アドレスには、特定のサーバー インスタンスのミラーリング エンドポイントに関連付けられたポート番号が含まれています。
既定では、SQL Server のインスタンスにはデータベース ミラーリング エンドポイントが含まれません。 データベース ミラーリング エンドポイントは、データベース ミラーリング セッションの設定時に手動で作成する必要があります。 データベース ミラーリングにかかわる各サーバー インスタンスには、システム管理者が、別個のエンドポイントを作成する必要があります。 特定のコンピューター上の複数のサーバー インスタンスにデータベース ミラーリング エンドポイントが必要な場合は、エンドポイントごとに異なるポート番号を指定します。
重要
SQL Server を実行しているコンピューターでファイアウォールを使用している場合は、エンドポイントで指定されているポートを送信と受信の両方の接続で使用できるようにファイアウォールを構成する必要があります。
データベース ミラーリングと Always On 可用性グループでは、認証と暗号化はエンドポイントで構成されます。 詳細については、「 トランスポート セキュリティ - データベース ミラーリング - Always On 可用性」を参照してください。
重要
使用中のデータベース ミラーリング エンドポイントを再構成しないでください。 サーバー インスタンスは、互いのエンドポイントを使用して、他のシステムの状態を調べます。 エンドポイントを再構成すると、そのエンドポイントは再起動されます。これにより、他のサーバー インスタンスではエラーが発生したように見えることがあります。 これは、自動フェールオーバー モードでは特に重要です。この場合、パートナーでエンドポイントを再構成すると、フェールオーバーが発生する可能性があります。
データベース ミラーリング エンドポイントの認証の種類を決定する
次のように、サーバー インスタンスの SQL Server サービス アカウントによって、データベース ミラーリング エンドポイントに使用できる認証の種類が決まります。
サーバー インスタンスがドメイン サービス アカウントで実行中の場合は、データベース ミラーリング エンドポイントで Windows 認証を使用できます。 すべてのサーバー インスタンスが同じドメイン ユーザー アカウントとして実行されている場合、両方の
masterデータベースに正しいユーザー ログインが自動的に存在します。 可用性データベースのセキュリティ構成が単純化されるので、こちらの方法をお勧めします。可用性グループの可用性レプリカをホストしているサーバー インスタンスが異なるアカウントとして実行される場合は、各アカウントのログインを他のサーバー インスタンスの
masterに作成する必要があります。 その後、そのログインには、そのサーバー インスタンスCONNECTデータベース ミラーリング エンドポイントに接続するためのアクセス許可が付与されている必要があります。 詳細については、「 ログイン アカウントの設定 - データベース ミラーリング Always On 可用性」を参照してください。サーバー インスタンスで Windows 認証を使用する場合は、 Transact-SQL、PowerShell、または新しい可用性グループ ウィザードを使用して、データベース ミラーリング エンドポイントを作成できます。
Note
可用性レプリカをホストするサーバー インスタンスにデータベース ミラーリング エンドポイントがない場合、新しい可用性グループ ウィザードは、Windows 認証を使用するデータベース ミラーリング エンドを自動的に作成できます。 詳細については、「 可用性グループ ウィザードの使用 (SQL Server Management Studio)」を参照してください。
サービス インスタンスがビルトイン アカウント (Local System、Local Service、Network Service など) で実行されている場合、または、非ドメイン アカウントで実行されている場合は、エンドポイント認証に証明書を使用する必要があります。 データベース ミラーリング エンドポイントに証明書を使用している場合、システム管理者は、送信接続と受信接続の両方で証明書を使用するように各サーバー インスタンスを構成する必要があります。
証明書を使用してデータベース ミラーリング セキュリティを構成する自動化された方法はありません。
CREATE ENDPOINTTransact-SQL ステートメントまたはNew-SqlHadrEndpointPowerShell コマンドレットを使用する必要があります。 詳細については、「 CREATE ENDPOINT」を参照してください。 サーバー インスタンスで証明書認証を有効にする方法については、「 データベース ミラーリング エンドポイントに証明書を使用する」を参照してください。
関連タスク
データベース ミラーリング エンドポイントを構成する
データベース ミラーリング エンドポイントに関する情報を表示する
sys.database_mirroring_endpoints(Transact-SQL)