Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения: SQL Server Управляемый экземпляр SQL Azure
Помечает анонимную или транзакционную подписку по запросу для повторной инициализации при следующем запуске агента распространителя. Эта хранимая процедура выполняется на подписчике в базе данных подписки по запросу.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_reinitpullsubscription
[ @publisher = ] N'publisher'
[ , [ @publisher_db = ] N'publisher_db' ]
[ , [ @publication = ] N'publication' ]
[ ; ]
Аргументы
[ @publisher = ] N'publisher'
Имя издателя. @publisher — sysname без значения по умолчанию.
[ @publisher_db = ] N'publisher_db'
Имя базы данных издателя. @publisher_db имеет имя sysname с значением по умолчаниюNULL.
[ @publication = ] N'publication'
Имя публикации. @publication — sysname, с значением по умолчаниюall, которое помечает все подписки для повторной инициализации.
Значения кода возврата
0 (успешно) или 1 (сбой).
Замечания
sp_reinitpullsubscription используется в репликации транзакций.
sp_reinitpullsubscription не поддерживается для одноранговой репликации транзакций.
sp_reinitpullsubscriptionможно вызвать от подписчика, чтобы повторно инициализировать подписку во время следующего запуска агент распространения.
Подписки на публикации, созданные со значением false @immediate_sync, не могут быть повторно инициализированы из подписчика.
Вы можете повторно инициализировать подписку на вытягивание, выполнив sp_reinitpullsubscription на подписчике или sp_reinitsubscription на издателе.
Примеры
-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables
-- on the command line and in SQL Server Management Studio, see the
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".
DECLARE @publicationDB AS sysname;
DECLARE @publication AS sysname;
SET @publicationDB = N'AdventureWorks2022';
SET @publication = N'AdvWorksProductTran';
USE [AdventureWorks2022Replica]
-- Execute at the Subscriber to reinitialize the pull subscription.
EXEC sp_reinitpullsubscription
@publisher = $(PubServer),
@publisher_db = @publicationDB,
@publication = @publication;
GO
-- Start the Distribution Agent.
Разрешения
Могут выполняться sp_reinitpullsubscriptionтолько члены предопределенных ролей сервера sysadmin или db_owner предопределенных ролей базы данных.