Procédure : initialiser un abonnement transactionnel à partir d'une sauvegarde (programmation Transact-SQL de la réplication)
Bien qu'un abonnement à une publication transactionnelle soit en général initialisé à l'aide d'un instantané, il est possible d'initialiser un abonnement à partir d'une sauvegarde en utilisant les procédures stockées de réplication. For more information, see Initialisation d'un abonnement transactionnel sans capture instantanée.
Pour initialiser un Abonné transactionnel à partir d'une sauvegarde
Pour une publication existante, assurez-vous que la publication prend en charge la capacité d'initialiser à partir d'une sauvegarde en exécutant sp_helppublication (Transact-SQL) sur la base de données de publication du serveur de publication. Notez la valeur de allow_initialize_from_backup dans le jeu de résultats.
Si la valeur est 1, la publication prend en charge cette fonctionnalité.
Si la valeur est 0, exécutez sp_changepublication (Transact-SQL) sur la base de données de publication du serveur de publication. Spécifiez la valeur allow_initialize_from_backup pour @property et la valeur true pour @value.
Pour une nouvelle publication, exécutez sp_addpublication (Transact-SQL) sur la base de données de publication du serveur de publication. Spécifiez la valeur true pour allow_initialize_from_backup. For more information, see Procédure : créer une publication (programmation Transact-SQL de la réplication).
Créez une sauvegarde de la base de données de publication à l'aide de l'instruction BACKUP (Transact-SQL).
Restaurez la sauvegarde sur l'Abonné à l'aide de l'instruction RESTORE (Transact-SQL).
Exécutez la procédure stockée sp_addsubscription (Transact-SQL) sur la base de données de publication du serveur de publication. Spécifiez les paramètres suivants :
@sync_type – valeur de initialize with backup ;
@backupdevicetype – type d'unité de sauvegarde : logical (valeur par défaut), disk ou tape ;
@backupdevicename – unité de sauvegarde logique ou physique à utiliser pour la restauration.
Pour une unité logique, spécifiez le nom de l'unité de sauvegarde qui a été spécifié quand sp_addumpdevice a été utilisé pour créer l'unité.
Pour une unité physique, spécifiez un chemin d'accès complet et un nom de fichier, tels que ou DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\BACKUP\Mybackup.dat' ;
(Facultatif) @password – mot de passe qui a été fourni lorsque le jeu de sauvegarde a été créé ;
(Facultatif) @mediapassword – mot de passe qui a été fourni lorsque le support de sauvegarde a été formaté ;
(Facultatif) @fileidhint – identificateur pour le jeu de sauvegarde à restaurer. Par exemple, la valeur 1 indique le premier jeu de sauvegarde sur le support de sauvegarde et la valeur 2 le second jeu de sauvegarde ;
(Facultatif pour les périphériques à bandes) @unload – spécifiez la valeur 1 (valeur par défaut) si la bande doit être déchargée du lecteur une fois la restauration terminée et 0 si elle ne doit pas être déchargée.
(Facultatif) Pour un abonnement par extraction, exécutez sp_addpullsubscription (Transact-SQL) et sp_addpullsubscription_agent (Transact-SQL) sur la base de données d'abonnement de l'Abonné. For more information, see Procédure : créer un abonnement par extraction de données (programmation Transact-SQL de réplication).
(Facultatif) Démarrez l'Agent de distribution. Pour plus d'informations, consultez Procédure : synchroniser un abonnement par extraction de données (pull) (Programmation de la réplication) ou Procédure : synchroniser un abonnement par envoi de données (push) (Programmation de la réplication).
Voir aussi