Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения:SQL Server
В этом примере показаны все этапы, необходимые для создания сеанса зеркального отображения базы данных со свидетелем с проверкой подлинности Windows. В примерах в этом подразделе используется язык Transact-SQL. Обратите внимание, что в качестве альтернативы использованию этапов Transact-SQL для установки зеркального отображения баз данных можно воспользоваться мастером конфигурации безопасности зеркального отображения баз данных. Дополнительные сведения см. в разделе Настройка сеанса зеркального отображения базы данных с помощью проверки подлинности Windows (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).
Разрешения
Требуется разрешение ALTER для базы данных и разрешение CREATE ENDPOINT, либо членство в предопределённой серверной роли sysadmin.
Пример
В этом примере два участника и свидетель представляют собой экземпляры серверов, используемые по умолчанию в трех компьютерных системах. На трех экземплярах сервера работает один и тот же домен Windows, но в данном примере для каждого экземпляра следящего сервера предусмотрены разные учетные записи пользователя (применяемые в качестве учетной записи запуска для службы).
В следующей таблице представлены все значения, использованные в этом примере.
| Начальная роль зеркального отображения | Система размещения | Учетная запись пользователя домена |
|---|---|---|
| Принципал | PARTNERHOST1 | <Mydomain>\<dbousername> |
| Зеркало | PARTNERHOST5 | <Mydomain>\<dbousername> |
| Свидетель | WITNESSHOST4 | <Somedomain>\<witnessuser> |
Создайте конечную точку на экземпляре основного сервера (экземпляр по умолчанию для 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]; --Grant connect permissions on endpoint to login account of partners. GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Mydomain\dbousername]; GOСоздайте конечную точку на экземпляре зеркального сервера (экземпляр по умолчанию для 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]; --Grant connect permissions on endpoint to login account of partners. GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [Mydomain\dbousername]; GOСоздайте конечную точку на экземпляре следящего сервера (экземпляр по умолчанию для 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Создайте зеркальную базу данных. Дополнительные сведения см. в статье Подготовка зеркальной базы данных к зеркальному отображению (SQL Server).
На экземпляре сервера-зеркала на PARTNERHOST5 укажите экземпляр сервера на PARTNERHOST1 в качестве партнера, тем самым сделав его исходным экземпляром основного сервера.
ALTER DATABASE AdventureWorks SET PARTNER = 'TCP://PARTNERHOST1.COM:7022' GOНа основном экземпляре сервера PARTNERHOST1 укажите экземпляр сервера PARTNERHOST5 в качестве партнёра, сделав его исходным экземпляром зеркального сервера.
ALTER DATABASE AdventureWorks SET PARTNER = 'TCP://PARTNERHOST5.COM:7022' GOНа основном сервере настройте сервер-свидетель, который находится на WITNESSHOST4.
ALTER DATABASE AdventureWorks SET WITNESS = 'TCP://WITNESSHOST4.COM:7022' GO
Связанные задачи
Подготовка зеркальной базы данных для зеркального отображения (SQL Server)
Настройка зеркальной базы данных на использование свойства Trustworthy (Transact-SQL)
Пример. Настройка зеркального отображения базы данных с помощью сертификатов (язык Transact-SQL)
Связанные материалы
- ALTER DATABASE (Transact-SQL)
- Конечная точка зеркального отображения базы данных (SQL Server)
- Транспортная безопасность в группах доступности и зеркалирование баз данных
- Управление метаданными при создании базы данных на другом сервере
- Безопасность системы управления базами данных SQL Server и базы данных Azure SQL