Example: Setting Up Database Mirroring Using Windows Authentication (Transact-SQL)

W tym przykładzie przedstawiono wszystkie etapy niezbędne do utworzenia dublowanie bazy danych sesja z dowód, przy użyciu uwierzytelnianie systemu Windows.W przykładach używana tego tematu Transact-SQL. Należy zauważyć, że zamiast przy użyciu Transact-SQL kroki, można użyć konfiguracji bazy danych lustrzane Kreatora zabezpieczeń dla bazy danych konfiguracji dublowanie. Aby uzyskać więcej informacji zobaczManaging Database Mirroring (SQL Server Management Studio).

Wymagania wstępne

W przykładzie użyto AdventureWorks przykładowej bazy danych, który używa proste model odzyskiwanie domyślnie.Aby korzystać z dublowanie bazy danych z tej bazy danych, należy zmiany go do używania w pełni model odzyskiwanie.Aby to zrobić w Transact-SQL, należy użyć instrukcja ALTER DATABASE, w następujący sposób:

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

Aby uzyskać informacje dotyczące zmiany w modelu odzyskiwanie SQL Server Management Studio, zobacz Jak Wyświetl lub zmień modelu odzyskiwanie bazy danych (SQL Server Management Studio).

Przykład

W tym przykładzie dwóch partnerów i dowód są wystąpienia domyślnego serwera trzech systemach komputerowych.wystąpienie serwera trzy uruchomić tej samej domenie systemu Windows, ale konto użytkownika jest inny dla wystąpienie serwer monitora w przykładzie.

W poniższej tabela zestawiono wartości używane w tym przykładzie.

Początkowe dublowanie roli

System hosta

Konto użytkownika domena

Główne

PARTNERHOST1

<Moja_domena>\<dbousername>

Aby MIRROR = DISK, kopia zapasowa automatycznie określa rozmiar blok w odpowiednich dla urządzeń dyskowych.

PARTNERHOST5

<Moja_domena>\<dbousername>

Dowód

WITNESSHOST4

<Somedomain>\<witnessuser>

  1. Tworzenie punktu końcowego w wystąpieniu serwer główny (wystąpienie domyślne na 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. Tworzenie punktu końcowego w wystąpieniu serwer dublowany (wystąpienie domyślne na 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. Utwórz punkt końcowy w wystąpieniu serwer monitora (domyślnego wystąpienie na 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. Utwórz bazę danych dublowania.Aby uzyskać więcej informacji zobaczHow to: Prepare a Mirror Database for Mirroring (Transact-SQL).

  5. W wystąpieniu serwera dublowanie na PARTNERHOST5 jako wystąpienie serwera na PARTNERHOST1 (dzięki czemu wystąpienie serwer główny początkowego jest) partner.

    ALTER DATABASE AdventureWorks 
        SET PARTNER = 
        'TCP://PARTNERHOST1.COM:7022'
    GO
    
  6. W wystąpieniu serwer główny na PARTNERHOST1 zestaw na PARTNERHOST5 jako partner (dzięki czemu wystąpienie serwera początkowego lustrzane jest) wystąpienie serwera.

    ALTER DATABASE AdventureWorks 
        SET PARTNER = 'TCP://PARTNERHOST5.COM:7022'
    GO
    
  7. serwer główny należy ustawić dowód, (który znajduje się na WITNESSHOST4).

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