sp_add_log_shipping_secondary_primary (Transact-SQL)

Définit les informations du serveur principal et de la base de données primaire, établit des liaisons avec les serveurs moniteurs locaux et distants, et crée des travaux de copie et de restauration sur le serveur secondaire pour la base de données primaire spécifiée.

Icône Lien de rubrique Conventions de la syntaxe de Transact-SQL

Syntaxe

sp_add_log_shipping_secondary_primary
 [ @primary_server = ] 'primary_server', 
[ @primary_database = ] 'primary_database',
[ @backup_source_directory = ] 'backup_source_directory' , 
[ @backup_destination_directory = ] 'backup_destination_directory'
[ @copy_job_name = ] 'copy_job_name'
[ @restore_job_name = ] 'restore_job_name'
[, [ @file_retention_period = ] 'file_retention_period']
[, [ @monitor_server = ] 'monitor_server']
[, [ @monitor_server_security_mode = ] 'monitor_server_security_mode']
[, [ @monitor_server_login = ] 'monitor_server_login']
[, [ @monitor_server_password = ] 'monitor_server_password']
[, [ @copy_job_id = ] 'copy_job_id' OUTPUT ]
[, [ @restore_job_id = ] 'restore_job_id' OUTPUT ]
[, [ @secondary_id = ] 'secondary_id' OUTPUT]

Arguments

  • [ @primary_server = ] 'primary_server'
    Nom de l'instance principale du moteur de base de données Microsoft SQL Server dans la configuration de l'envoi des journaux. L'argument primary_server est de type sysname et ne peut pas être NULL.

  • [ @primary_database = ] 'primary_database'
    Nom de la base de données sur le serveur principal. primary_database est de type sysname, sans valeur par défaut.

  • [ @backup_source_directory = ] 'backup_source_directory'
    Répertoire où les fichiers de sauvegarde des journaux de transactions du serveur principal sont stockés. backup_source_directory est de type nvarchar(500) et ne peut pas être NULL.

  • [ @backup_destination_directory = ] 'backup_destination_directory'
    Répertoire sur le serveur secondaire où sont copiés les fichiers de sauvegarde. backup_destination_directory est de type nvarchar(500) et ne peut pas être NULL.

  • [ @copy_job_name = ] 'copy_job_name'
    Nom à utiliser pour le travail de l'Agent SQL Server créé pour copier les sauvegardes du journal de transactions vers le serveur secondaire. L'argument copy_job_name est de type sysname et ne peut pas être NULL.

  • [ @restore_job_name = ] 'restore_job_name'
    Nom du travail de l'Agent SQL Server du serveur secondaire chargé de restaurer les sauvegardes dans la base de données secondaire. restore_job_name est de type sysname et ne peut pas être NULL.

  • [ @file_retention_period = ] 'file_retention_period'
    Période de rétention, en minutes, de l'historique. history_retention_period est de type int, avec NULL comme valeur par défaut. Une valeur de 14420 sera utilisée en l'absence de toute autre spécification.

  • [ @monitor_server = ] 'monitor_server'
    Nom du serveur moniteur. Monitor_server est de type sysname, sans valeur par défaut ; sa valeur ne peut pas être NULL.

  • [ @monitor_server_security_mode = ] 'monitor_server_security_mode'
    Mode de sécurité utilisé pour connecter le serveur moniteur.

    1 = Authentification Windows.

    0 = Authentication SQL Server.

    L'argument monitor_server_security_mode est de type bit et ne peut pas être NULL.

  • [ @monitor_server_login = ] 'monitor_server_login'
    Nom d'utilisateur du compte qui permet d'accéder au serveur moniteur.

  • [ @monitor_server_password = ] 'monitor_server_password'
    Mot de passe du compte qui permet d'accéder au serveur moniteur.

  • [ @copy_job_id = ] 'copy_job_id' OUTPUT
    ID associé au travail de copie sur le serveur secondaire. copy_job_id est de type uniqueidentifier et ne peut pas être NULL.

  • [ @restore_job_id = ] 'restore_job_id' OUTPUT
    ID associé au travail de restauration sur le serveur secondaire. restore_job_id est de type uniqueidentifier et ne peut pas être NULL.

  • [ @secondary_id = ] 'secondary_id' OUTPUT
    ID du serveur secondaire dans la configuration d'envoi de journaux. secondary_id est de type uniqueidentifier et ne peut pas être NULL.

Valeurs des codes renvoyés

0 (succès) ou 1 (échec)

Jeux de résultats

Aucun

Notes

La procédure sp_add_log_shipping_secondary_primary doit être exécutée à partir de la base de données master sur le serveur secondaire. Cette procédure stockée effectue les opérations suivantes :

  1. Génère un ID secondaire pour le serveur principal et la base de données primaire spécifiés.

  2. Se charge :

    1. d'ajouter une entrée pour l'ID secondaire dans log_shipping_secondary en fonction des arguments fournis ;

    2. de créer un travail de copie pour l'ID secondaire qui est désactivé ;

    3. de définir l'ID du travail de copie dans l'entrée log_shipping_secondary conformément à l'identificateur du travail de copie.

    4. de créer un travail de restauration pour l'ID secondaire qui est désactivé ;

    5. de définir l'ID du travail de restauration dans l'entrée log_shipping_secondary conformément à l'identificateur du travail de restauration.

Autorisations

Seuls les membres du rôle de serveur fixe sysadmin peuvent exécuter cette procédure.

Exemple

Cet exemple montre comment utiliser la procédure stockée sp_add_log_shipping_secondary_primary pour définir les informations de la base de données primaire AdventureWorks2012 sur le serveur secondaire.

EXEC master.dbo.sp_add_log_shipping_secondary_primary 
@primary_server = N'TRIBECA' 
,@primary_database = N'AdventureWorks' 
,@backup_source_directory = N'\\tribeca\LogShipping' 
,@backup_destination_directory = N'' 
,@copy_job_name = N'' 
,@restore_job_name = N'' 
,@file_retention_period = 1440 
,@monitor_server = N'ROCKAWAY' 
,@monitor_server_security_mode = 1 
,@copy_job_id = @LS_Secondary__CopyJobId OUTPUT 
,@restore_job_id = @LS_Secondary__RestoreJobId OUTPUT 
,@secondary_id = @LS_Secondary__SecondaryId OUTPUT 
GO

Voir aussi

Référence

Procédures stockées système (Transact-SQL)

Concepts

Vue d'ensemble de la copie des journaux de transaction