Inicializar una suscripción transaccional desde una copia de seguridad (programación de la replicación con Transact-SQL)
Aunque una suscripción a una publicación transaccional se inicializa normalmente con una instantánea, también se puede inicializar desde una copia de seguridad mediante procedimientos almacenados de replicación. Para obtener más información, consulte Initialize a Transactional Subscription Without a Snapshot.
Para inicializar una suscripción transaccional desde una copia de seguridad
Para una publicación existente, asegúrese de que la publicación admite la capacidad de inicializar desde la copia de seguridad ejecutando sp_helppublication (Transact-SQL) en el publicador de la base de datos de publicaciones. Tenga en cuenta el valor de allow_initialize_from_backup en el conjunto de resultados.
Si el valor es 1, la publicación admite esta funcionalidad.
Si el valor es 0, ejecute sp_changepublication (Transact-SQL) en el publicador de la base de datos de publicación. Especifique un valor de allow_initialize_from_backup para @property y un valor de
true
para @value.
Para una nueva publicación, ejecute sp_addpublication (Transact-SQL) en el publicador de la base de datos de publicación. Especifique un valor de
true
para allow_initialize_from_backup. Para obtener más información, vea Crear una suscripción.Advertencia
Para evitar perder los datos del suscriptor, al utilizar sp_addpublication con
@allow_initialize_from_backup = N'true'
, utilice siempre@immediate_sync = N'true'
.Cree una copia de seguridad de la base de datos de publicación mediante la instrucción BACKUP (Transact-SQL).
Restaure la copia de seguridad en el suscriptor mediante la instrucción RESTORE (Transact-SQL).
En la base de datos de publicación del publicador, ejecute el procedimiento almacenado sp_addsubscription (Transact-SQL). Especifique los parámetros siguientes:
@sync_type - un valor de initialize with backup.
@backupdevicetype - el tipo de dispositivo de copia de seguridad: logical (predeterminado), disko tape.
@backupdevicename - dispositivo de copia de seguridad físico o lógico que se usará para la restauración.
Para una unidad lógica, especifique el nombre del dispositivo de copia de seguridad especificado cuando se usó sp_addumpdevice para crear el dispositivo.
Para un dispositivo físico, especifique una ruta de acceso y un nombre de archivo completos, como
DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\BACKUP\Mybackup.dat'
oTAPE = '\\.\TAPE0'
.(Opcional) @password - una contraseña que se proporcionó cuando se creó el conjunto de copia de seguridad.
(Opcional) @mediapassword - una contraseña que se proporcionó cuando se dio formato al conjunto de medios.
(Opcional) @fileidhint - el identificador para el conjunto de copia de seguridad que se va a restaurar. Por ejemplo, 1 indica el primer conjunto de copia de seguridad del medio de copia de seguridad y 2 indica el segundo conjunto de copia de seguridad.
(Opcional para los dispositivos de cinta) @unload - especifica un valor de 1 (predeterminado) si la cinta debe descargarse de la unidad una vez completada la restauración y 0 si no debe descargarse.
(Opcional) Para una suscripción de extracción, ejecute sp_addpullsubscription (Transact-SQL) y sp_addpullsubscription_agent (Transact-SQL) en el suscriptor de la base de datos de suscripciones. Para obtener más información, consulte Create a Pull Subscription.
(Opcional) Inicio el Agente de distribución. Para obtener más información, consulte Synchronize a Pull Subscription o Synchronize a Push Subscription.
Consulte también
Copiar bases de datos con Copias de seguridad y restauración
Copia de seguridad y restauración de bases de datos de SQL Server