Procédure : afficher et modifier les propriétés du serveur de publication et du serveur de distribution (programmation Transact-SQL de la réplication)

Les propriétés du serveur de publication et du serveur de distribution peuvent être affichées par programme en utilisant des procédures stockées de réplication.

Pour afficher les propriétés du serveur de distribution et de la base de données de distribution

  1. Exécutez sp_helpdistributor pour retourner des informations sur le serveur de distribution, la base de données de distribution et le répertoire de travail.

  2. Exécutez sp_helpdistributiondb pour retourner les propriétés d'une base de données de distribution spécifiée.

Pour modifier les propriétés du serveur de distribution et de la base de données de distribution

  1. Sur le serveur de distribution, exécutez sp_changedistributor_property pour modifier les propriétés du serveur de distribution.

  2. Sur le serveur de distribution, exécutez sp_changedistributiondb pour modifier les propriétés de la base de données de distribution.

  3. Sur le serveur de distribution, exécutez sp_changedistributor_password pour modifier le mot de passe du serveur de distribution.

    Remarque relative à la sécuritéRemarque relative à la sécurité

    Lorsque cela est possible, invitez les utilisateurs à saisir leurs informations d'identification au moment de l'exécution. Évitez de stocker ces informations dans un fichier de script.

  4. Sur le serveur de distribution, exécutez sp_changedistpublisher pour modifier les propriétés d'un serveur de publication à l'aide du serveur de distribution.

Exemple

L'exemple de script Transact-SQL suivant retourne des informations sur le serveur de distribution et sur la base de données de distribution.

-- View information about the Distributor, distribution database, 
-- working directory, and SQL Server Agent user account. 
USE master
EXEC sp_helpdistributor;
GO
-- View information about the specified distribution database. 
USE distribution
EXEC sp_helpdistributiondb;
GO

Cet exemple modifie les périodes de rétention du serveur de distribution, le mot de passe utilisé lors de la connexion au serveur de distribution et l'intervalle auquel le serveur de distribution vérifie l'état de différents Agents de réplication (également appelé intervalle d'interrogation).

Remarque relative à la sécuritéRemarque relative à la sécurité

Si possible, demandez aux utilisateurs de fournir les informations d'identification de sécurité au moment de l'exécution. Si vous devez stocker ces informations dans un fichier de script, vous devez sécuriser ce fichier pour empêcher tout accès non autorisé.

-- Change the heartbeat interval at the Distributor to 5 minutes. 
USE master 
exec sp_changedistributor_property 
    @property = N'heartbeat_interval', 
    @value = 5;
GO
DECLARE @distributionDB AS sysname;
SET @distributionDB = N'distribution';

-- Change the history retention period to 24 hours and the
-- maximum retention period to 48 hours.  
USE distribution
EXEC sp_changedistributiondb @distributionDB, N'history_retention', 24
EXEC sp_changedistributiondb @distributionDB, N'max_distretention', 48
GO 
-- Change the password on the Distributor. 
-- To avoid storing the password in the script file, the value is passed 
-- into SQLCMD as a scripting variable. 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".
USE master
EXEC sp_changedistributor_password $(Password)
GO