Хранимая процедура sp_replmonitorhelpsubscription (Transact-SQL)sp_replmonitorhelpsubscription (Transact-SQL)

ОБЛАСТЬ ПРИМЕНЕНИЯ: даSQL Server (начиная с версии 2008) нетБаза данных SQL Azure нетХранилище данных SQL AzureнетParallel Data Warehouse APPLIES TO: yesSQL Server (starting with 2008) noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Возвращает сведения о текущем состоянии подписок, относящихся к одной или нескольким публикациям на издателе, и одну строку для каждой возвращенной подписки.Returns current status information for subscriptions belonging to one or more publications at the Publisher and returns one row for each returned subscription. Эта хранимая процедура, используемая для наблюдения за репликацией, выполняется на распространителе в базе данных распространителя.This stored procedure, which is used to monitor replication, is executed at the Distributor on the distribution database.

Значок ссылки на раздел Синтаксические обозначения в Transact-SQLTopic link icon Transact-SQL Syntax Conventions

СинтаксисSyntax

  
sp_replmonitorhelpsubscription [ @publisher = ] 'publisher'  
    [ , [ @publisher_db = ] 'publisher_db' ]  
    [ , [ @publication = ] 'publication' ]  
    [ , [ @publication_type = ] publication_type ]   
    [ , [ @mode = ] mode ]  
    [ , [ @topnum = ] topnum ]   
    [ , [ @exclude_anonymous = ] exclude_anonymous ]   
    [ , [ @refreshpolicy = ] refreshpolicy ]  

АргументыArguments

[ @publisher = ] 'publisher' — Имя издателя, состояние которого отслеживается.[ @publisher = ] 'publisher' Is the name of the Publisher the status of which is being monitored. издательsysname, со значением по умолчанию NULL.publisher is sysname, with a default value of NULL. Если null, возвращаются сведения обо всех издателях, использующих распространитель.If null, information is returned for all Publishers that use the Distributor.

[ @publisher_db = ] 'publisher_db' — Имя опубликованной базы данных.[ @publisher_db = ] 'publisher_db' Is the name of the published database. publisher_dbsysname, со значением по умолчанию NULL.publisher_db is sysname, with a default value of NULL. Если значение равно NULL, возвращаются сведения для всех баз данных, публикуемых данным издателем.If NULL, then information is returned for all published databases at the Publisher.

[ @publication = ] 'publication' Имя публикации, который отслеживается.[ @publication = ] 'publication' Is the name of the publication being monitored. Публикацияsysname, со значением по умолчанию NULL.publication is sysname, with a default value of NULL.

[ @publication_type = ] publication_type Если тип публикации.[ @publication_type = ] publication_type If the type of publication. publication_typeint, и может принимать одно из следующих значений.publication_type is int, and can be one of these values.

ЗначениеValue ОписаниеDescription
00 Публикация транзакций.Transactional publication.
11 Публикация моментальных снимков.Snapshot publication.
22 Публикация слиянием.Merge publication.
NULL (по умолчанию)NULL (default) Репликация пытается определить тип публикации.Replication tries to determine the publication type.

[ @mode = ] mode Режим фильтрации, используемой при возврате подписки отслеживает сведения.[ @mode = ] mode Is the filtering mode to use when returning subscription monitoring information. режимint, и может принимать одно из следующих значений.mode is int, and can be one of these values.

ЗначениеValue ОписаниеDescription
0 (по умолчанию)0 (default) Возвращать все подписки.Returns all subscriptions.
11 Возвращать подписки с ошибками.Returns only subscriptions with errors.
22 Возвращать подписки с предупреждениями о нарушениях пороговых показателей.Returns only subscriptions that have generated threshold metric warnings.
33 Возвращать подписки с ошибками или предупреждениями о нарушениях пороговых показателей.Returns only subscriptions that either have errors or have generated threshold metric warnings.
44 Возвращает верхний 25 подписок худшей производительностью.Returns the top 25 worst performing subscriptions.
55 Возвращать 50 подписок с худшей производительностью.Returns the top 50 worst performing subscriptions.
66 Возвращать подписки, синхронизируемые в данный момент.Returns only subscriptions that are currently being synchronized.
77 Возвращать подписки, не синхронизируемые в данный момент.Returns only subscriptions that are not currently being synchronized.

[ @topnum = ] topnum Ограничивает результирующий набор указанным числом подписок в верхней части возвращаемых данных.[ @topnum = ] topnum Restricts the result set to only the specified number of subscriptions at the top of the returned data. topnumint, не имеет значения по умолчанию.topnum is int, with no default.

[ @exclude_anonymous = ] exclude_anonymous — Если анонимные подписки по запросу, исключаются из результирующего набора.[ @exclude_anonymous = ] exclude_anonymous Is if anonymous pull subscriptions are excluded from the result set. exclude_anonymousбит, значение по умолчанию 0; значение 1 подразумевает, что анонимные подписки исключаются, а значение из 0 означает, что они включаются.exclude_anonymous is bit, with a default of 0; a value of 1 means that anonymous subscriptions are excluded and a value of 0 means that they are included.

[ @refreshpolicy = ] refreshpolicy Только для внутреннего использования.[ @refreshpolicy = ] refreshpolicy Internal use only.

Результирующие наборыResult Sets

Имя столбцаColumn name Тип данныхData type ОписаниеDescription
statusstatus intint Проверяет состояние всех агентов репликации, связанных с публикацией, и возвращает самое высокое состояние из обнаруженных с учетом следующего порядка:Examines the status of all the replication agents associated with the publication, and returns the highest status found in the following order:

6 = ошибка6 = Failed

5 = Повтор5 = Retrying

2 = остановлена2 = Stopped

4 = бездействует4 = Idle

3 = выполняется3 = In progress

1 = запущен1 = Started
Предупреждениеwarning intint Максимальный уровень предупреждений, выдаваемых подпиской, принадлежащей публикации; это значение может быть результатом операции логического OR над одним или несколькими из следующих значений:Maximum threshold warning generated by a subscription belonging to the publication, which can be the logical OR result of one or more of these values.

1 = expiration — подписка на публикацию транзакций не была синхронизирована пороговым сроком хранения.1 = expiration - a subscription to a transactional publication has not been synchronized within the retention period threshold.

2 = latency — время, необходимое для репликации данных транзакционного издателя на подписчик, превысило пороговое значение, в секундах.2 = latency - the time taken to replicate data from a transactional Publisher to the Subscriber exceeds the threshold, in seconds.

4 = mergeexpiration — подписка на публикацию слиянием не была синхронизирована пороговым сроком хранения.4 = mergeexpiration - a subscription to a merge publication has not been synchronized within the retention period threshold.

8 = mergefastrunduration — время, затраченное на завершение синхронизации подписки слиянием, превысило пороговое значение, в секундах, быстрое сетевое подключение.8 = mergefastrunduration - the time taken to complete synchronization of a merge subscription exceeds the threshold, in seconds, over a fast network connection.

16 = mergeslowrunduration — время, затраченное на завершение синхронизации подписки слиянием через медленное или коммутируемое сетевое подключение превышает пороговое значение, в секундах.16 = mergeslowrunduration - the time taken to complete synchronization of a merge subscription exceeds the threshold, in seconds, over a slow or dial-up network connection.

32 = mergefastrunspeed — скорость доставки строк во время синхронизации подписки слиянием не для поддержки пороговой, в строках в секунду, через быстрое сетевое подключение.32 = mergefastrunspeed - the delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate, in rows per second, over a fast network connection.

64 = mergeslowrunspeed — скорость доставки строк во время синхронизации подписки слиянием не поддерживать пороговой, в строках в секунду, через медленное или коммутируемое сетевое подключение.64 = mergeslowrunspeed - the delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate, in rows per second, over a slow or dial-up network connection.
подписчикsubscriber sysnamesysname Имя подписчика.Is the name of the Subscriber.
subscriber_dbsubscriber_db sysnamesysname Имя базы данных, использующейся подпиской.Is the name of the database used for the subscription.
publisher_dbpublisher_db sysnamesysname Имя базы данных публикации.Is the name of the publication database.
публикацииpublication sysnamesysname Имя публикации.Is the name of a publication.
publication_typepublication_type intint Тип публикации, может принимать одно из следующих значений:Is the type of publication, which can be one of these values:

0 = публикация транзакций0 = Transactional publication

1 = публикация моментальных снимков1 = Snapshot publication

2 = публикация слиянием2 = Merge publication
Подтипsubtype intint Тип подписки может принимать одно из следующих значений:Is the subscription type, which can be one of the following values:

0 = Принудительная0 = Push

1 = по запросу1 = Pull

2 = анонимная2 = Anonymous
Задержкаlatency intint Наибольшая задержка (в секундах) при изменении данных, зафиксированная для публикации транзакций агентом чтения журнала или агентом распространителя.The highest latency, in seconds, for data changes propagated by the Log Reader or Distribution Agents for a transactional publication.
latencythresholdlatencythreshold intint Максимальная задержка для публикации транзакций, при превышении которой создается предупреждение.Is the maximum latency for the transactional publication above which a warning is raised.
agentnotrunningagentnotrunning intint Время в часах, в течение которого агент не был запущен.Is the length of time, in hours, during which the agent has not run.
agentnotrunningthresholdagentnotrunningthreshold intint Время в часах, в течение которого агент может не быть запущен, но предупреждения не последует.Is the length of time, in hours, that the agent has not run before a warning is raised.
timetoexpirationtimetoexpiration intint Время в часах, после которого срок действия подписки истекает, если она не будет синхронизирована.Is the length of time, in hours, before the subscription expires if not synchronized.
expirationthresholdexpirationthreshold intint Время в часах, после которого срок действия подписки истекает, и создается предупреждение.Is the time, in hours, before the subscription expires that a warning is raised.
last_distsynclast_distsync datetimedatetime Дата и время последнего запуска агента распространителя.Is the datetime that the Distribution Agent last ran.
distribution_agentnamedistribution_agentname sysnamesysname Имя задания агента распространителя для подписки на публикацию транзакций.Is the name of the Distribution Agent job for the subscription to a transactional publication.
mergeagentnamemergeagentname sysnamesysname Имя задания агента слияния для подписки на публикацию слиянием.Is the name of the Merge Agent job for the subscription to a merge publication.
mergesubscriptionfriendlynamemergesubscriptionfriendlyname sysnamesysname Понятное имя подписки.Is the friendly name given to the subscription.
mergeagentlocationmergeagentlocation sysnamesysname Имя сервера, на котором запущен агент слияния.Is the name of the server on which the Merge Agent runs.
mergeconnectiontypemergeconnectiontype intint Соединение, использующееся для синхронизации подписки на публикацию слиянием, может быть одного из следующих типов:Connection used when synchronizing a subscription to a merge publication, which can be one of the following values:

1 = локальная сеть (LAN)1 = local area network (LAN)

2 = коммутируемое сетевое соединение2 = dial-up network connection

3 = веб-синхронизации.3 = Web synchronization.
mergePerformancemergePerformance intint Производительность последней синхронизации по сравнению со всеми синхронизациями для данной подписки. Вычисляется как скорость доставки последней синхронизации, поделенная на среднее арифметическое скоростей доставки для всех предыдущих синхронизаций.Performance of the last synchronization compared to all synchronizations for the subscription, which is based on the delivery rate of the last synchronization divided by the average of all previous delivery rates.
mergerunspeedmergerunspeed floatfloat Скорость доставки последней синхронизации подписки.Is the delivery rate of the last synchronization for the subscription.
mergerundurationmergerunduration intint Время, затраченное на последнюю синхронизацию подписки.Is the length of time to complete the last synchronization of the subscription.
monitorrankingmonitorranking intint Ранжирующее значение для упорядочивания подписок в результирующем наборе может быть одним из следующих.Is the ranking value used to order the subscriptions in the result set, and can be one of these values:

Для публикаций транзакций.For a transactional publication:

60 = ошибка60 = Error

56 = предупреждение: критическое для производительности56 = Warning: performance critical

52 = предупреждение: срок действия скоро истекает или истек срок действия52 = Warning: expiring soon or expired

50 = предупреждение: подписка не инициализирована50 = Warning: subscription uninitialized

40 = Повтор сбойной команды40 = Retrying failed command

30 = не выполняется (завершено успешно)30 = Not running (success)

20 = выполняется (запуск, выполнение или бездействие)20 = Running (starting, running, or idle)

Для публикаций слиянием.For a merge publication:

60 = ошибка60 = Error

56 = предупреждение: критическое для производительности56 = Warning: performance critical

54 = предупреждение: длительное слияние54 = Warning: long-running merge

52 = предупреждение: срок действия скоро истекает52 = Warning: expiring soon

50 = предупреждение: подписка не инициализирована50 = Warning: subscription uninitialized

40 = Повтор сбойной команды40 = Retrying failed command

30 = выполняется (запуск, выполнение или бездействие)30 = Running (starting, running, or idle)

20 = не выполняется (завершено успешно)20 = Not running (success)
distributionagentjobiddistributionagentjobid binary(16)binary(16) Идентификатор задания агента распространителя для подписки на публикацию транзакций.ID of the Distribution Agent job for subscriptions to a transactional publication.
mergeagentjobidmergeagentjobid binary(16)binary(16) Идентификатор задания агента слияния для подписки на публикацию слиянием.ID of the Merge Agent job for subscriptions to a merge publication.
distributionagentiddistributionagentid intint Идентификатор задания агента распространителя для подписки.ID of the Distribution Agent job for the subscription.
distributionagentprofileiddistributionagentprofileid intint Идентификатор профиля агента распространителя.ID of the agent profile used by the Distribution Agent.
mergeagentidmergeagentid intint Идентификатор задания агента слияния для подписки.ID of the Merge Agent job for the subscription.
mergeagentprofileidmergeagentprofileid intint Идентификатор профиля агента слияния.ID of the agent profile used by the Merge Agent.

Значения кода возвратаReturn Code Values

0 (успешное завершение) или 1 (неуспешное завершение)0 (success) or 1 (failure)

ПримечанияRemarks

sp_replmonitorhelpsubscription используется со всеми типами репликации.sp_replmonitorhelpsubscription is used with all types of replication.

sp_replmonitorhelpsubscription упорядочивает результирующий набор, в зависимости от серьезности состояния подписки, которая определяется по значению monitorranking.sp_replmonitorhelpsubscription orders the result set based on the severity of the status of the subscription, which is determined by the value of monitorranking. Например, строки всех подписок в состоянии ошибки находятся выше строк подписок с предупреждениями.For example, rows for all subscriptions in an error state are ordered above rows for subscriptions in a warning state.

РазрешенияPermissions

Только члены db_owner или replmonitor предопределенной роли базы данных в базе данных распространителя могут выполнять процедуру sp_replmonitorhelpsubscription.Only members of the db_owner or replmonitor fixed database role on the distribution database can execute sp_replmonitorhelpsubscription.

См. такжеSee Also

Наблюдение за репликацией программным образомProgrammatically Monitor Replication