Поделиться через


Пример. Настройка зеркального отображения базы данных с помощью проверки подлинности 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).

Пример

В этом примере два участника и следящий сервер являются экземплярами серверов по умолчанию на трех компьютерах. Три экземпляра серверов запускаются в одном и том же домене 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

Журнал изменений

Версия Журнал

5 декабря 2005 г.

Измененное содержимое.
  • Удалены устаревшие этапы по созданию зеркальной базы данных с ссылкой на соответствующий раздел.
  • Обновлены сетевые адреса образца сервера.