sp_resyncmergesubscription (Transact-SQL)
Se aplica a: SQL Server
Vuelve a sincronizar una suscripción de combinación en el estado de validación conocido que especifique. Puede forzar la convergencia o sincronizar la base de datos de suscripciones con un momento dado específico, como la última vez que se realizó una validación correcta o con una fecha especificada. La instantánea no se vuelve a aplicar al resincronizar una suscripción mediante este método. Este procedimiento almacenado no se usa para las suscripciones de replicación de instantáneas ni para las suscripciones de replicación transaccional. Este procedimiento almacenado se ejecuta en el publicador de la base de datos de publicación o en el suscriptor de la base de datos de suscripciones.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_resyncmergesubscription
[ [ @publisher = ] N'publisher' ]
[ , [ @publisher_db = ] N'publisher_db' ]
, [ @publication = ] N'publication'
[ , [ @subscriber = ] N'subscriber' ]
[ , [ @subscriber_db = ] N'subscriber_db' ]
, [ @resync_type = ] resync_type
[ , [ @resync_date_str = ] N'resync_date_str' ]
[ ; ]
Argumentos
[ @publisher = ] N'publisher'
El nombre del publicador. @publisher es sysname, con un valor predeterminado de NULL
. Un valor de NULL
es válido si el procedimiento almacenado se ejecuta en el publicador. Si el procedimiento almacenado se ejecuta en el suscriptor, se debe especificar un publicador.
[ @publisher_db = ] N'publisher_db'
Nombre de la base de datos de publicación. @publisher_db es sysname, con un valor predeterminado de NULL
. Un valor de es válido si el procedimiento almacenado se ejecuta en el publicador de la base de NULL
datos de publicación. Si el procedimiento almacenado se ejecuta en el suscriptor, se debe especificar un publicador.
[ @publication = ] N'publication'
Nombre de la publicación. @publication es sysname, sin ningún valor predeterminado.
[ @subscriber = ] N'subscriber'
Nombre del suscriptor. @subscriber es sysname, con un valor predeterminado de NULL
. Un valor de NULL
es válido si el procedimiento almacenado se ejecuta en el suscriptor. Si el procedimiento almacenado se ejecuta en el publicador, se debe especificar un suscriptor.
[ @subscriber_db = ] N'subscriber_db'
Nombre de la base de datos de suscripciones. @subscriber_db es sysname, con un valor predeterminado de NULL
. Un valor de es válido si el procedimiento almacenado se ejecuta en el suscriptor de la base de NULL
datos de suscripciones. Si el procedimiento almacenado se ejecuta en el publicador, se debe especificar un suscriptor.
[ @resync_type = ] resync_type
Define cuándo se debe iniciar la resincronización. @resync_type es int y puede ser uno de los siguientes valores.
Valor | Descripción |
---|---|
0 |
La sincronización comienza después de la instantánea inicial. Esta opción es la más intensiva en recursos, ya que todos los cambios desde que se vuelve a aplicar la instantánea inicial al suscriptor. |
1 |
La sincronización comienza después de la última validación correcta. Todas las generaciones nuevas o incompletas originadas a partir de la última validación correcta se aplicarán de nuevo al suscriptor. |
2 |
La sincronización comienza a partir de la fecha especificada en resync_date_str. Todas las generaciones nuevas o incompletas originadas después de la fecha se vuelven a aplicar al suscriptor. |
[ @resync_date_str = ] N'resync_date_str'
Define la fecha en la que debería comenzar la resincronización. @resync_date_str es nvarchar(30), con un valor predeterminado de NULL
. Este parámetro se usa cuando el @resync_type es un valor de 2
. La fecha especificada se convierte en su valor datetime equivalente.
Valores de código de retorno
0
(correcto) o 1
(erróneo).
Comentarios
sp_resyncmergesubscription
se usa en la replicación de mezcla.
Un valor de 0
para el parámetro @resync_type , que vuelve a aplicar todos los cambios desde la instantánea inicial, puede ser intensivo en recursos, pero posiblemente mucho menor que una reinicialización completa. Por ejemplo, si la instantánea inicial tuvo lugar hace un mes, este valor dará lugar a que se apliquen de nuevo los datos del pasado mes. Si la instantánea inicial contenía 1 gigabyte (GB) de datos, pero el número de cambios del mes pasado consistía en 2 megabytes (MB) de datos modificados, sería más eficaz volver a aplicar los datos que para volver a aplicar la instantánea completa de 1 GB.
Permisos
Solo los miembros del rol fijo de servidor sysadmin o el rol fijo de base de datos db_owner pueden ejecutar sp_resyncmergesubscription
.