sp_reinitpullsubscription (Transact-SQL)
Se aplica a: SQL Server Azure SQL Managed Instance
Marca una suscripción transaccional de extracción o anónima para reinicializarla la próxima vez que se ejecute el Agente de distribución. Este procedimiento almacenado se ejecuta en el suscriptor de la base de datos de suscripciones de extracción.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_reinitpullsubscription
[ @publisher = ] N'publisher'
[ , [ @publisher_db = ] N'publisher_db' ]
[ , [ @publication = ] N'publication' ]
[ ; ]
Argumentos
[ @publisher = ] N'publisher'
El nombre del publicador. @publisher es sysname, sin ningún valor predeterminado.
[ @publisher_db = ] N'publisher_db'
Nombre de la base de datos del publicador. @publisher_db es sysname, con un valor predeterminado de NULL
.
[ @publication = ] N'publication'
Nombre de la publicación. @publication es sysname, con un valor predeterminado de all
, que marca todas las suscripciones para reinicialización.
Valores de código de retorno
0
(correcto) o 1
(erróneo).
Comentarios
sp_reinitpullsubscription
se usa en la replicación transaccional.
sp_reinitpullsubscription
no se admite para la replicación transaccional punto a punto.
sp_reinitpullsubscription
se puede llamar desde el suscriptor para reinicializar la suscripción, durante la siguiente ejecución del Agente de distribución.
Las suscripciones a publicaciones creadas con un valor de false
para @immediate_sync no se pueden reinicializar desde el suscriptor.
Puede reinicializar una suscripción de extracción ejecutando sp_reinitpullsubscription
en el suscriptor o sp_reinitsubscription
en el publicador.
Ejemplos
-- 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.
Permisos
Solo los miembros del rol fijo de servidor sysadmin o el rol fijo de base de datos db_owner pueden ejecutar sp_reinitpullsubscription
.