Windows 認証を使用したデータベース ミラーリングの設定の例 (Transact-SQL)

この例では、Windows 認証を使用してミラーリング監視サーバーを利用するデータベース ミラーリング セッションを作成する場合に必要なすべての段階を示しています。このトピックの例では、Transact-SQL を使用します。Transact-SQL を使用する代わりに、データベース ミラーリング セキュリティ構成ウィザードを使用してデータベース ミラーリングを設定することもできます。詳細については、「データベース ミラーリングの管理 (SQL Server Management Studio)」を参照してください。

前提条件

この例では、既定により単純復旧モデルを使用する AdventureWorks サンプル データベースを使用します。このデータベースでデータベース ミラーリングを使用するには、完全復旧モデルを使用するように変更する必要があります。Transact-SQL を使用してこの変更を行うには、次のように ALTER DATABASE ステートメントを使用します。

USE master;
GO
ALTER DATABASE AdventureWorks 
SET RECOVERY FULL;
GO

SQL Server Management Studio を使用した復旧モデルの変更に関する詳細については、「データベースの復旧モデルを表示または変更する方法 (SQL Server Management Studio)」を参照してください。

この例では、2 つのパートナーとミラーリング監視サーバーが、3 つのコンピュータ システムの既定のサーバー インスタンスです。3 つのサーバー インスタンスは同じ Windows ドメインで実行されますが、ミラーリング監視サーバー インスタンスはユーザー アカウントが異なります。

次の表は、この例で使用する値をまとめたものです。

初期ミラー化ロール ホスト システム ドメイン ユーザー アカウント

プリンシパル

PARTNERHOST1

<Mydomain>\<dbousername>

ミラー

PARTNERHOST5

<Mydomain>\<dbousername>

ミラーリング監視

WITNESSHOST4

<Somedomain>\<witnessuser>

  1. プリンシパル サーバー インスタンス (PARTNERHOST1 の既定のインスタンス) でエンドポイントを作成します。

    CREATE ENDPOINT Endpoint_Mirroring
        STATE=STARTED 
        AS TCP (LISTENER_PORT=7022) 
        FOR DATABASE_MIRRORING (ROLE=PARTNER)
    GO
    --Partners under same domain user; login already exists in master.
    --Create a login for the witness server instance,
    --which is running as Somedomain\witnessuser:
    USE master ;
    GO
    CREATE LOGIN [Somedomain\witnessuser] FROM WINDOWS ;
    GO
    -- Grant connect permissions on endpoint to login account of witness.
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Somedomain\witnessuser];
    GO
    
  2. ミラー サーバー インスタンス (PARTNERHOST5 の既定のインスタンス) でエンドポイントを作成します。

    CREATE ENDPOINT Endpoint_Mirroring
        STATE=STARTED 
        AS TCP (LISTENER_PORT=7022) 
        FOR DATABASE_MIRRORING (ROLE=ALL)
    GO
    --Partners under same domain user; login already exists in master.
    --Create a login for the witness server instance,
    --which is running as Somedomain\witnessuser:
    USE master ;
    GO
    CREATE LOGIN [Somedomain\witnessuser] FROM WINDOWS ;
    GO
    --Grant connect permissions on endpoint to login account of witness.
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Somedomain\witnessuser];
    GO
    
  3. ミラーリング監視サーバー インスタンス (WITNESSHOST4 の既定のインスタンス) でエンドポイントを作成します。

    CREATE ENDPOINT Endpoint_Mirroring
        STATE=STARTED 
        AS TCP (LISTENER_PORT=7022) 
        FOR DATABASE_MIRRORING (ROLE=WITNESS)
    GO
    --Create a login for the partner server instances,
    --which are both running as Mydomain\dbousername:
    USE master ;
    GO
    CREATE LOGIN [Mydomain\dbousername] FROM WINDOWS ;
    GO
    --Grant connect permissions on endpoint to login account of partners.
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Mydomain\dbousername];
    GO
    
  4. ミラー データベースを作成します。詳細については、「ミラーリング用のミラー データベースを準備する方法 (Transact-SQL)」を参照してください。

  5. PARTNERHOST5 のミラー サーバー インスタンスで、PARTNERHOST1 のサーバー インスタンスをパートナーとして設定します (初期プリンシパル サーバー インスタンスにします)。

    ALTER DATABASE AdventureWorks 
        SET PARTNER = 
        'TCP://PARTNERHOST1.COM:7022'
    GO
    
  6. PARTNERHOST1 のプリンシパル サーバー インスタンスで、PARTNERHOST5 のサーバー インスタンスをパートナーとして設定します (初期ミラー サーバー インスタンスにします)。

    ALTER DATABASE AdventureWorks 
        SET PARTNER = 'TCP://PARTNERHOST5.COM:7022'
    GO
    
  7. プリンシパル サーバーで、ミラーリング監視サーバー (WITNESSHOST4) を設定します。

    ALTER DATABASE AdventureWorks 
        SET WITNESS = 
        'TCP://WITNESSHOST4.COM:7022'
    GO
    

参照

処理手順

データベース ミラーリング セキュリティ構成ウィザードを起動する方法 (SQL Server Management Studio)
TRUSTWORTHY プロパティを使用するようにミラー データベースを設定する方法

概念

データベース ミラーリング トランスポート セキュリティ
データベース ミラーリングの管理 (SQL Server Management Studio)
データベースを別のサーバー インスタンスで使用できるようにするときのメタデータの管理
データベース ミラーリング エンドポイント

その他の技術情報

ALTER DATABASE (Transact-SQL)
SQL Server のセキュリティに関する注意点

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2005 年 12 月 5 日

変更内容 :
  • ミラー データベースを作成する古い手順を、適切な手順が記載されたトピックへのリンクに置き換えました。
  • サンプル サーバー ネットワーク アドレスを更新しました。