Как разрешить использование монитора репликации пользователям без прав администратора (программирование репликации на языке Transact-SQL)
Возможность мониторинга топологии репликации предоставляется только предопределенной роли сервера sysadmin, предопределенной роли базы данных db_owner и предопределенной роли базы данных replmonitor в базе данных распространителя. Назначить предопределенную роль базы данных replmonitor новому пользователю можно программным способом с помощью системных хранимых процедур.
Добавление пользователя к предопределенной роли «replmonitor» базы данных
В базе данных на распространителе выполните процедуру, описанную в разделе sp_helpuser (Transact-SQL). Если пользователь не указан в поле UserName результирующего набора, ему должен быть предоставлен доступ к базе данных распространителя с помощью инструкции CREATE USER (Transact-SQL).
В базе данных распространителя на распространителе выполните процедуру sp_helprolemember (Transact-SQL), указав значение replmonitor в параметре @rolename. Если пользователь указан в поле MemberName результирующего набора, он уже принадлежит этой роли.
Если пользователь не принадлежит роли replmonitor, выполните процедуру Хранимая процедура sp_addrolemember (Transact-SQL) в базе данных распространителя на распространителе. Укажите значение replmonitor для @rolename, а также добавляемое имя пользователя базы данных или имя входа Microsoft Windows для @membername.
Удаление пользователя из предопределенной роли «replmonitor» базы данных
Чтобы проверить, что пользователь принадлежит роли replmonitor, выполните в базе данных распространителя на распространителе процедуру sp_helprolemember (Transact-SQL) и задайте значение replmonitor для @rolename. Если пользователь не указан в поле MemberName результирующего набора, в данный момент он не принадлежит этой роли.
Если пользователь принадлежит роли replmonitor, выполните процедуру sp_droprolemember (Transact-SQL) в базе данных распространителя на распространителе. Укажите значение replmonitor для @rolename, а также удаляемое имя пользователя базы данных или имя входа Windows для @membername.