Поделиться через


sp_helppublication (Transact-SQL)

Область применения: SQL Server Управляемый экземпляр SQL Azure

Возвращает сведения о публикации. Для публикации SQL Server эта хранимая процедура выполняется на издателе в базе данных публикации. В публикации Oracle эта хранимая процедура выполняется в распространителе для любой базы данных.

Соглашения о синтаксисе Transact-SQL

Синтаксис

sp_helppublication_snapshot
    [ @publication = ] N'publication'
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

Аргументы

[ @publication = ] N'publication'

Имя отображаемой публикации. @publication — sysname, с значением по умолчанию%, которое возвращает сведения обо всех публикациях.

[ @publisher = ] N'publisher'

Указывает издателя, отличного от SQL Server. @publisher — sysname с значением по умолчаниюNULL.

Примечание.

издатель не должен указываться при запросе сведений о публикации из издателя SQL Server.

Результирующий набор

Имя столбца Тип данных Description
pubid int Идентификатор публикации.
name sysname Имя публикации.
restricted int Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.
status tinyint Текущее состояние публикации.

0 = неактивный.
1 = активный.
task Используется для обратной совместимости.
replication frequency tinyint Тип частоты репликации:

0 = Транзакционный
1 = моментальный снимок
synchronization method tinyint Режим синхронизации:

0 = собственная программа массового копирования (служебная программа bcp )
1 = массовое копирование символов
3 = параллельно, что означает, что используется собственная массовая копия (служебная программа bcp ), но таблицы не блокируются во время моментального снимка.
4 = Concurrent_c, что означает, что массовое копирование символов используется, но таблицы не блокируются во время моментального снимка
description nvarchar(255) Дополнительное описание публикации.
immediate_sync bit Указывает, создаются ли файлы синхронизации или создаются повторно при каждом запуске агент моментальных снимков.
enabled_for_internet bit Указывает, предоставляются ли файлы синхронизации для публикации в Интернете через протокол ПЕРЕДАЧи файлов (FTP) и другие службы.
allow_push bit Указывает, разрешены ли push-подписки на публикацию.
allow_pull bit Указывает, разрешены ли подписки на вытягивание в публикации.
allow_anonymous bit Указывает, разрешены ли анонимные подписки на публикацию.
independent_agent bit Указывает, существует ли автономный агент распространения для этой публикации.
immediate_sync_ready bit Указывает, создан ли агент моментальных снимков моментальный снимок, готовый к использованию новыми подписками. Этот аргумент задается только в том случае, если в данной публикации моментальный снимок всегда доступен для новых или повторно инициализированных подписок.
allow_sync_tran bit Определяет, разрешены ли для публикации немедленно обновляемые подписки.
autogen_sync_procs bit Указывает, следует ли автоматически создавать хранимые процедуры для поддержки немедленно обновляемых подписок.
snapshot_jobid binary(16) Идентификатор запланированной задачи.
retention int Сохраняемый объем изменений данной публикации в часах.
has subscription bit Указывает, имеет ли публикация активную подписку. 1 означает, что публикация имеет активные подписки и 0 означает, что публикация не имеет подписок.
allow_queued_tran bit Указывает, отключает ли очередь изменений на подписчике, пока они не будут применены на издателе. Если 0изменения на подписчике не помещаются в очередь.
snapshot_in_defaultfolder bit Указывает, хранятся ли файлы моментальных снимков в папке по умолчанию. Если 0файлы моментальных снимков хранятся в альтернативном расположении, указанном alternate_snapshot_folder. Если 1файлы моментальных снимков можно найти в папке по умолчанию.
alt_snapshot_folder nvarchar(255) Указывает местоположение альтернативной папки для моментального снимка.
pre_snapshot_script nvarchar(255) Указывает указатель на .sql расположение файла. Если моментальный снимок создается для подписчика, то агент распространителя выполняет предварительный скрипт моментального снимка до запуска скриптов реплицируемых объектов.
post_snapshot_script nvarchar(255) Указывает указатель на .sql расположение файла. Агент распространения будет запускать скрипт после моментального снимка после применения всех остальных реплицированных скриптов объектов и данных во время начальной синхронизации.
compress_snapshot bit Указывает, что моментальный снимок, записанный в расположение alt_snapshot_folder , должен быть сжатым в формате CAB Майкрософт. 0 указывает, что моментальный снимок не сжимается.
ftp_address sysname Сетевой адрес службы FTP для распространителя. Указывает расположение файлов моментальных снимков публикаций для агента распространителя или агента слияния подписчика.
ftp_port int Номер порта службы FTP для распространителя.
ftp_subdirectory nvarchar(255) Указывает, где доступны файлы моментальных снимков для агент распространения или агент слияния подписчика, чтобы забрать, если публикация поддерживает распространение моментальных снимков с помощью FTP.
ftp_login sysname Имя пользователя для подключения к службе FTP.
allow_dts bit Указывает, что в публикации разрешены преобразования данных. 0 указывает, что преобразования DTS не допускаются.
allow_subscription_copy bit Указывает, включена ли возможность копирования баз данных подписки, подписывающихся на эту публикацию. 0 означает, что копирование запрещено.
centralized_conflicts bit Определяет, хранятся ли на издателе конфликтные записи.

0 = записи конфликтов хранятся как у издателя, так и у подписчика, вызвавшего конфликт.
1 = записи конфликтов хранятся на издателе.
conflict_retention int Задает срок хранения конфликтных записей в днях.
conflict_policy int Задает политику устранения конфликтов при обновлении подписчика посредством очередей. Может принимать одно из следующих значений:

1 = издатель выигрывает конфликт.
2 = подписчик выигрывает конфликт.
3 = подписка повторно инициализирована.
queue_type Задает используемый тип очереди. Может принимать одно из следующих значений:

msmq = использование очереди сообщений Майкрософт для хранения транзакций.
sql = использование SQL Server для хранения транзакций.
Примечание. Поддержка очереди сообщений прекращена.
backward_comp_level Уровень совместимости базы данных и может быть одним из следующих значений:

90 = SQL Server 2005 (9.x)
100 = Microsoft SQL Server 2008 (10.0.x)
publish_to_AD bit Указывает, публикуется ли публикация в Microsoft Active Directory. Значение указывает, что опубликовано, а значение 1 0 указывает, что она не опубликована.
allow_initialize_from_backup bit Показывает, может ли подписчик инициализировать подписку на эту публикацию из резервной копии, а не из исходного моментального снимка. 1 означает, что подписки можно инициализировать из резервной копии и 0 означает, что они не могут. Дополнительные сведения см. в статье Инициализация подписки транзакций без моментального снимка подписчика транзакций без моментального снимка .
replicate_ddl int Указывает, поддерживается ли для публикации репликация схемы. 1 указывает, что операторы языка определения данных (DDL), выполняемые на издателе, реплицируются и 0 указывают, что инструкции DDL не реплицируются. Дополнительные сведения см. в статье Внесение изменений в схемы баз данных публикации.
enabled_for_p2p int Указывает, может ли публикация использоваться в топологии одноранговой репликации. 1 указывает, что публикация поддерживает одноранговую репликацию. Дополнительные сведения см. в разделе одноранговая репликация транзакций.
publish_local_changes_only int Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется.
enabled_for_het_sub int Указывает, поддерживает ли публикация подписчиков, отличных от SQL Server. Значение 1 означает, что поддерживаются подписчики, отличные от SQL Server. Значение 0 означает, что поддерживаются только подписчики SQL Server. Дополнительные сведения см. в статье Non-SQL Server Subscribers.
enabled_for_p2p_conflictdetection int Определяет, будет ли агент распространителя обнаруживать конфликты публикации, разрешенной для одноранговой репликации. Значение 1 означает, что обнаружены конфликты. Дополнительные сведения см. в разделе "Одноранговая— одноранговая репликация" — обнаружение конфликтов в одноранговой репликации.
originator_id int Указывает идентификатор в одноранговой топологии. Этот идентификатор используется для обнаружения конфликтов, если для enabled_for_p2p_conflictdetection задано значение 1. Для списка идентификаторов, которые уже используются, выполните запрос к системной таблице MSpeer_originatorid_history .
p2p_continue_onconflict int Указывает, продолжает ли агент распространителя обрабатывать изменения при обнаружении конфликта. Значение 1 означает, что агент продолжает обрабатывать изменения.

Внимание. Рекомендуется использовать значение 0по умолчанию. Если этот параметр задан1, агент распространения пытается конвергентировать данные в топологии, применяя конфликтующую строку из узла, который является самым высоким идентификатором источника. Этот метод не гарантирует конвергенцию. После обнаружения конфликта следует убедиться, что топология остается согласованной. Дополнительные сведения см. в разделе "Обработка конфликтов" в одноранговой репликации . Обнаружение конфликтов в одноранговой репликации.
allow_partition_switch int Указывает, можно ли ALTER TABLE...SWITCH выполнять инструкции в опубликованной базе данных. Дополнительные сведения см. в статье Replicate Partitioned Tables and Indexes (Репликация секционированных таблиц и индексов).
replicate_partition_switch int Указывает, следует ли ALTER TABLE...SWITCH реплицировать инструкции, выполняемые в опубликованной базе данных подписчикам. Этот параметр действителен только в том случае, если allow_partition_switch задано значение 1.
enabled_for_p2p_lastwriter_conflictdetection int Указывает, обнаруживает ли агент распространения настройка конфликтов записи и конфликтов разрешения конфликтов последнего модуля записи для публикации, которая включена для одноранговой репликации. Значение означает, что обнаружены последние 1 конфликты записи.

Применимо к: SQL Server 2019 (15.x) CU 13 и более поздних версий.

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

0 (успешно) или 1 (сбой).

Замечания

sp_helppublication используется в моментальном снимке и репликации транзакций.

sp_helppublication возвращает сведения обо всех публикациях, принадлежащих пользователю, выполняющим эту процедуру.

Примеры

DECLARE @myTranPub AS sysname
SET @myTranPub = N'AdvWorksProductTran' 

USE [AdventureWorks2022]
EXEC sp_helppublication @publication = @myTranPub
GO

Разрешения

Могут выполняться sp_helppublicationтолько члены предопределенных ролей сервера sysadmin в издателе или членах предопределенных ролей базы данных db_owner в базе данных публикации или пользователей в списке доступа к публикации (PAL).

Для издателя, отличного от SQL Server, только члены предопределенных ролей сервера sysadmin на распространителе или членах предопределенных ролей базы данных db_owner в базе данных распространителя или пользователей в PAL могут выполняться sp_helppublication.