Хранимая процедура sp_replmonitorhelpsubscription (Transact-SQL)
Применимо к: SQL Server (все поддерживаемые версии)
Управляемый экземпляр SQL Azure
Возвращает сведения о текущем состоянии подписок, относящихся к одной или нескольким публикациям на издателе, и одну строку для каждой возвращенной подписки. Эта хранимая процедура, используемая для наблюдения за репликацией, выполняется на распространителе в базе данных распространителя.
Синтаксические обозначения в Transact-SQL
Синтаксис
sp_replmonitorhelpsubscription [ @publisher = ] 'publisher'
[ , [ @publisher_db = ] 'publisher_db' ]
[ , [ @publication = ] 'publication' ]
[ , [ @publication_type = ] publication_type ]
[ , [ @mode = ] mode ]
[ , [ @topnum = ] topnum ]
[ , [ @exclude_anonymous = ] exclude_anonymous ]
[ , [ @refreshpolicy = ] refreshpolicy ]
Аргументы
[ @publisher = ] 'publisher'
имя Publisher состояние которого отслеживается. параметр Publisher имеет тип sysname и значение по умолчанию NULL. Если значение равно NULL, то возвращаются сведения для всех издателей, использующих распространитель.
[ @publisher_db = ] 'publisher_db'
Имя опубликованной базы данных. Аргумент publisher_db имеет тип sysname и значение по умолчанию NULL. Если значение равно NULL, возвращаются сведения для всех баз данных, публикуемых данным издателем.
[ @publication = ] 'publication'
Имя отслеживаемой публикации. Аргумент publication имеет тип sysname и значение по умолчанию NULL.
[ @publication_type = ] publication_type
Тип публикации. publication_type имеет тип int и может принимать одно из следующих значений.
Значение | Описание |
---|---|
0 | Публикация транзакций. |
1 | Публикация моментальных снимков. |
2 | Публикация слиянием. |
NULL (по умолчанию) | Репликация пытается определить тип публикации. |
[ @mode = ] mode
Режим фильтрации, используемый при возврате сведений мониторинга подписки. mode имеет тип int и может принимать одно из следующих значений.
Значение | Описание |
---|---|
0 (по умолчанию) | Возвращать все подписки. |
1 | Возвращать подписки с ошибками. |
2 | Возвращать подписки с предупреждениями о нарушениях пороговых показателей. |
3 | Возвращать подписки с ошибками или предупреждениями о нарушениях пороговых показателей. |
4 | Возвращает 25 самых худших подписок. |
5 | Возвращать 50 подписок с худшей производительностью. |
6 | Возвращать подписки, синхронизируемые в данный момент. |
7 | Возвращать подписки, не синхронизируемые в данный момент. |
[ @topnum = ] topnum
Ограничит результирующий набор только указанным числом подписок в верхней части возвращенных данных. топнум имеет тип int и не имеет значения по умолчанию.
[ @exclude_anonymous = ] exclude_anonymous
Имеет значение, если анонимные подписки по запросу исключаются из результирующего набора. exclude_anonymous имеет бит, значение по умолчанию 0; значение 1 означает, что анонимные подписки исключаются, а значение 0 означает, что они включены.
[ @refreshpolicy = ] refreshpolicy
Только для внутреннего использования.
Результирующие наборы
Имя столбца | Тип данных | Описание |
---|---|---|
status | int | Проверяет состояние всех агентов репликации, связанных с публикацией, и возвращает самое высокое состояние из обнаруженных с учетом следующего порядка: 6 = сбой 5 = повторная попытка 2 = остановлено 4 = бездействие 3 = выполняется 1 = запущено |
warning | int | Максимальный уровень предупреждений, выдаваемых подпиской, принадлежащей публикации; это значение может быть результатом операции логического OR над одним или несколькими из следующих значений: 1 = срок действия истекает — подписка на публикацию транзакций не была синхронизирована в течение порогового срока хранения. 2 = задержка — время, затраченное на репликацию данных из транзакционных Publisher на подписчик, превышает пороговое значение в секундах. 4 = mergeexpiration — подписка на публикацию слиянием не была синхронизирована в течение порогового значения срока хранения. 8 = mergefastrunduration — время, затраченное на выполнение синхронизации подписки на публикацию слиянием, превышает пороговое значение (в секундах) при быстром сетевом подключении. 16 = mergeslowrunduration — время, затраченное на выполнение синхронизации подписки на публикацию слиянием, превышает пороговое значение (в секундах) при низком или коммутируемом сетевом подключении. 32 = mergefastrunspeed — скорость доставки строк во время синхронизации подписки на публикацию слиянием не смогла поддерживать пороговое значение скорости (в строках в секунду) при быстром сетевом подключении. 64 = mergefastrunspeed — скорость доставки строк во время синхронизации подписки на публикацию слиянием не смогла поддерживать пороговое значение скорости (в строках в секунду) по отношению к низкому или коммутируемому сетевому соединению. |
подписчик | sysname | Имя подписчика. |
subscriber_db | sysname | Имя базы данных, использующейся подпиской. |
publisher_db | sysname | Имя базы данных публикации. |
публикации | sysname | Имя публикации. |
publication_type | int | Тип публикации, может принимать одно из следующих значений: 0 = публикация транзакций 1 = публикация моментальных снимков 2 = публикация слиянием |
Подтип | int | Тип подписки может принимать одно из следующих значений: 0 = принудительная отправка 1 = по запросу 2 = анонимный |
явно | int | Наибольшая задержка (в секундах) при изменении данных, зафиксированная для публикации транзакций агентом чтения журнала или агентом распространителя. |
latencythreshold | int | Максимальная задержка для публикации транзакций, при превышении которой создается предупреждение. |
agentnotrunning | int | Время в часах, в течение которого агент не был запущен. |
agentnotrunningthreshold | int | Время в часах, в течение которого агент может не быть запущен, но предупреждения не последует. |
timetoexpiration | int | Время в часах, после которого срок действия подписки истекает, если она не будет синхронизирована. |
expirationthreshold | int | Время в часах, после которого срок действия подписки истекает, и создается предупреждение. |
last_distsync | datetime | Дата и время последнего запуска агента распространителя. |
distribution_agentname | sysname | Имя задания агента распространителя для подписки на публикацию транзакций. |
mergeagentname | sysname | Имя задания агента слияния для подписки на публикацию слиянием. |
mergesubscriptionfriendlyname | sysname | Понятное имя подписки. |
mergeagentlocation | sysname | Имя сервера, на котором запущен агент слияния. |
mergeconnectiontype | int | Соединение, использующееся для синхронизации подписки на публикацию слиянием, может быть одного из следующих типов: 1 = локальная сеть (LAN) 2 = коммутируемое сетевое подключение 3 = веб-синхронизация. |
mergePerformance | int | Производительность последней синхронизации по сравнению со всеми синхронизациями для данной подписки. Вычисляется как скорость доставки последней синхронизации, поделенная на среднее арифметическое скоростей доставки для всех предыдущих синхронизаций. |
mergerunspeed | float | Скорость доставки последней синхронизации подписки. |
mergerunduration | int | Время, затраченное на последнюю синхронизацию подписки. |
monitorranking | int | Ранжирующее значение для упорядочивания подписок в результирующем наборе может быть одним из следующих. Для публикаций транзакций. 60 = ошибка 56 = предупреждение: критическое для производительности 52 = предупреждение: срок действия скоро истекает или истек 50 = предупреждение: подписка не инициализирована 40 = повторная попытка выполнить команду 30 = не выполняется (успешное завершение) 20 = выполняется (запуск, выполнение или бездействие) Для публикаций слиянием. 60 = ошибка 56 = предупреждение: критическое для производительности 54 = предупреждение: Длительное слияние 52 = предупреждение: срок действия скоро истекает 50 = предупреждение: подписка не инициализирована 40 = повторная попытка выполнить команду 30 = выполняется (запуск, выполнение или бездействие) 20 = не выполняется (успешное завершение) |
distributionagentjobid | двоичный (16) | Идентификатор задания агента распространителя для подписки на публикацию транзакций. |
mergeagentjobid | двоичный (16) | Идентификатор задания агента слияния для подписки на публикацию слиянием. |
distributionagentid | int | Идентификатор задания агента распространителя для подписки. |
distributionagentprofileid | int | Идентификатор профиля агента распространителя. |
mergeagentid | int | Идентификатор задания агента слияния для подписки. |
mergeagentprofileid | int | Идентификатор профиля агента слияния. |
Значения кода возврата
0 (успешное завершение) или 1 (сбой)
Комментарии
sp_replmonitorhelpsubscription используется со всеми типами репликации.
sp_replmonitorhelpsubscription упорядочивает результирующий набор на основе серьезности состояния подписки, которая определяется значением мониторранкинг. Например, строки всех подписок в состоянии ошибки находятся выше строк подписок с предупреждениями.
Разрешения
Только члены предопределенной роли базы данных db_owner или replmonitor в базе данных распространителя могут выполнять sp_replmonitorhelpsubscription.