Поделиться через


Как просмотреть и изменить свойства издателя и распространителя (программирование репликации на языке Transact-SQL)

Свойства издателя и распространителя можно просмотреть программно с помощью хранимых процедур репликации.

Просмотр свойств распространителя и базы данных распространителя

  1. Выполните хранимую процедуру sp_helpdistributor, которая возвращает сведения о распространителе, базе данных распространителя и рабочем каталоге.

  2. Выполните хранимую процедуру sp_helpdistributiondb, которая возвращает свойства заданной базы данных распространителя.

Изменение свойств распространителя и базы данных распространителя

  1. Чтобы изменить свойства распространителя, выполните на распространителе хранимую процедуру sp_changedistributor_property.

  2. Чтобы изменить свойства базы данных распространителя, выполните на распространителе хранимую процедуру sp_changedistributiondb.

  3. Чтобы изменить пароль распространителя, выполните на распространителе хранимую процедуру sp_changedistributor_password.

    Примечание по безопасностиПримечание по безопасности

    По возможности следует предлагать пользователям вводить учетные данные во время выполнения приложения. Избегайте хранения учетных данных в файле сценария.

  4. Чтобы изменить свойства издателя с помощью распространителя, выполните на распространителе хранимую процедуру sp_changedistpublisher.

Пример

В следующем примере сценарий Transact-SQL возвращает сведения о распространителе и базе данных распространителя.

-- 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

В этом примере изменяются сроки хранения для распространителя, пароль соединения с распространителем и интервал, с которым распространитель проверяет состояние различных агентов репликации (интервал тактового импульса).

Примечание по безопасностиПримечание по безопасности

По возможности предлагайте пользователям вводить учетные данные системы безопасности во время выполнения. При необходимости хранения учетных данных в файле сценария этот файл следует защитить от несанкционированного доступа.

-- 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