Управление именами входа и заданиями после переключения ролей

Для зеркального отображения доступно только содержимое основной базы данных. Связанные данные системных баз данных master и msdb для зеркального отображения недоступны. К таким данным относятся задания, установленные в основной базе данных, и имена входа, добавляемые в основной сервер.

Если такие данные необходимы для поддержки переключения ролей, то их следует продублировать на зеркальном сайте. После переключения ролей рекомендуется по возможности программно воспроизвести эти данные в новой основной базе данных. Чаще всего возникают неполадки, связанные с именами входа и заданиями.

Имена входа

Чтобы пользователи могли обращаться к базе данных после переключения ролей, имя входа с разрешением на доступ к основной базе данных на основном сервере необходимо также задать на зеркальном сервере. Но база данных master недоступна для зеркального отображения. Поэтому на текущем основном сервере создается новое имя входа для основной базы данных, то же самое необходимо сделать на зеркальном сервере.

Имя входа каждого пользователя следует задать вручную как на зеркальном сервере, так и на основном сервере. В противном случае, если при переключении основной роли бывший зеркальный сервер предоставляет свою базу данных в качестве основной, то пользователи, имена входа которых не определены на бывшем зеркальном сервере, не смогут получить доступ к новой основной базе данных. Эти пользователи будут потерянными.

Если пользователь оказался потерянным на новом основном сервере, создайте на нем новое имя входа и запустите хранимую процедуру sp_change_users_login (Transact-SQL). Дополнительные сведения см. в разделе Диагностика пользователей, утративших связь с учетной записью.

Имена входа для приложений, использующих проверку подлинности SQL Server

Если приложение, устанавливающее соединение с зеркальной базой данных, использует проверку подлинности SQL Server, то несоответствие идентификаторов безопасности может привести к ошибке входа после обработки отказа, а имя входа утрачивает связь с пользователем. Для решения этой проблемы можно воспользоваться хранимой процедурой sp_change_users_login (см. раздел Диагностика пользователей, утративших связь с учетной записью).

Однако рекомендуется предпринять профилактические меры во время настройки такого приложения на использование зеркальной базы данных. О том, как предотвратить возникновение этой проблемы, см. в статье базы знаний 918992 —Как передавать имена входа и пароли между экземплярами SQL Server 2005 и SQL Server 2008).

ПримечаниеПримечание

Эта проблема не возникает при использовании проверки подлинности Windows, так как идентификаторы безопасности для имен входа Windows не зависят от конкретного компьютера, а извлекаются из Active Directory.

Задания

Некоторые задания, например задания резервного копирования, следует рассмотреть особо. Обычно после переключения ролей владельцу базы данных или системному администратору приходится повторно создавать задания для новой основной базы данных.

Если бывший основной сервер доступен, то требуется также удалить исходные задания из новой зеркальной базы данных. Задания в зеркальной базе данных завершаются неуспешно, поскольку база данных находится в состоянии RESTORING и недоступна.

ПримечаниеПримечание

Участники могут быть настроены по-разному, например, могут различаться буквы, обозначающие накопители на магнитной ленте. Задания для каждого участника должны допускать подобные различия.