sp_adddistpublisher (Transact-sql)
Publisher belirtilen dağıtım veritabanını kullanacak şekilde yapılandırır. Bu saklı yordam, herhangi bir veritabanı üzerinde dağıtımcı adresindeki yürütülür. Not saklı yordamlar eşdeğerdirsp_adddistributor (Transact-sql)ve sp_adddistributiondb (Transact-sql)saklı yordamı uygulamadan önce çalıştırılmış gerekir.
Transact-SQL Sözdizim Kuralları
Sözdizimi
sp_adddistpublisher [ @publisher= ] 'publisher'
, [ @distribution_db= ] 'distribution_db'
[ , [ @security_mode= ] security_mode ]
[ , [ @login= ] 'login' ]
[ , [ @password= ] 'password' ]
[ , [ @working_directory= ] 'working_directory' ]
[ , [ @trusted= ] 'trusted' ]
[ , [ @encrypted_password= ] encrypted_password ]
[ , [ @thirdparty_flag = ] thirdparty_flag ]
[ , [ @publisher_type = ] 'publisher_type' ]
Bağımsız değişkenler
@ publisher ='Yayınevi'
Publisher addır. Yayıncı olan sysname, hiçbir varsayılan ile.@ distribution_db ='distribution_db'
Dağıtım veritabanının adıdır. distributor_db olan sysname, hiçbir varsayılan ile. Bu parametre için yayımcı bağlanmak için çoğaltma aracıları tarafından kullanılır.**@ security_mode =**security_mode
Uygulanan güvenlik modu var. Bu parametre yalnızca çoğaltma aracıları tarafından kuyruğa alınmış güncelleştirme abonelikler veya ile bir olmayan yayımcı bağlanmak için kullanılan- SQL Server Yayınevi. security_mode olan int, ve bu değerlerden biri olabilir.Değer
Açıklama
0
Çoğaltma aracıları at dağıtımcı kullanmak SQL Serveriçin yayımcı bağlanmak için kimlik.
1 (varsayılan)
Çoğaltma aracıları at dağıtımcı için yayımcı bağlanmak için Windows kimlik doğrulaması kullanın.
@login='giriş'
Oturum açma 's. Bu parametre gereklidir security_mode olan 0. Giriş olan sysname, null varsayılan. Bu parametre için yayımcı bağlanmak için çoğaltma aracıları tarafından kullanılır.@password='parola'
Parola değil. parola olan sysname, null varsayılan. Bu parametre için yayımcı bağlanmak için çoğaltma aracıları tarafından kullanılır.Güvenlik Notu Boş parola kullanmayın. Güçlü bir parola kullanın.
@ working_directory ='working_directory'
Yayın için veri ve şema dosyaları depolamak için kullanılan çalışma dizini adıdır. working_directory olan **nvarchar(255)**ve ReplData klasöründe bu örneği için varsayılan değeri SQL Server, örneğin 'C:\Program Files\Microsoft SQL Server\MSSQL\MSSQ.1\ReplData'. Adı unc biçiminde belirtilmelidir.@trusted='güvenilir'
Bu parametre onaylanmaz ve yalnızca geriye dönük uyumluluk için sağlanır. güvenilir olan **nvarchar(5)**ve bir şey ama ayarlamak yanlış bir hata neden olur.**@ encrypted_password =**encrypted_password
Ayar encrypted_password artık desteklenmiyor. Bu ayarlama girişiminde bit parametresi 1 bir hata neden olur.**@ thirdparty_flag =**thirdparty_flag
Publisher olduğunda SQL Server. thirdparty_flag olan bit, ve aşağıdaki değerlerden biri olabilir.Değer
Açıklama
0 (varsayılan)
SQL Serververitabanı.
1
Başka veritabanı SQL Server.
@ publisher_type=] 'publisher_type'
Yayımcı olmadığında Publisher belirtir SQL Server. publisher_type sysname, ve aşağıdaki değerlerden biri olabilir.Değer
Açıklama
MSSQLSERVER
(varsayılan)
Belirtir bir SQL ServerYayınevi.
ORACLE
Standart bir Oracle Publisher belirtir.
ORACLE GATEWAY
Oracle Gateway Publisher belirtir.
Oracle Publisher ve Oracle Gateway Publisher arasındaki farklar hakkında daha fazla bilgi için bkz: Oracle Publisher yapılandırma.
Dönüş Kodu Değerleri
0 (başarılı) veya 1 (hata)
Açıklamalar
sp_adddistpublisher anlık görüntü çoğaltma, işlem çoğaltma ve birleştirme çoğaltma tarafından kullanılır.
Örnek
-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). 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".
-- Install the Distributor and the distribution database.
DECLARE @distributor AS sysname;
DECLARE @distributionDB AS sysname;
DECLARE @publisher AS sysname;
DECLARE @directory AS nvarchar(500);
DECLARE @publicationDB AS sysname;
-- Specify the Distributor name.
SET @distributor = $(DistPubServer);
-- Specify the distribution database.
SET @distributionDB = N'distribution';
-- Specify the Publisher name.
SET @publisher = $(DistPubServer);
-- Specify the replication working directory.
SET @directory = N'\\' + $(DistPubServer) + '\repldata';
-- Specify the publication database.
SET @publicationDB = N'AdventureWorks2012';
-- Install the server MYDISTPUB as a Distributor using the defaults,
-- including autogenerating the distributor password.
USE master
EXEC sp_adddistributor @distributor = @distributor;
-- Create a new distribution database using the defaults, including
-- using Windows Authentication.
USE master
EXEC sp_adddistributiondb @database = @distributionDB,
@security_mode = 1;
GO
-- Create a Publisher and enable AdventureWorks2012 for replication.
-- Add MYDISTPUB as a publisher with MYDISTPUB as a local distributor
-- and use Windows Authentication.
DECLARE @distributionDB AS sysname;
DECLARE @publisher AS sysname;
-- Specify the distribution database.
SET @distributionDB = N'distribution';
-- Specify the Publisher name.
SET @publisher = $(DistPubServer);
USE [distribution]
EXEC sp_adddistpublisher @publisher=@publisher,
@distribution_db=@distributionDB,
@security_mode = 1;
GO
İzinler
Yalnızca üyeleri sysadmin sabit sunucu rolü yürütebilirsiniz sp_adddistpublisher.
Ayrıca bkz.
Başvuru
sp_changedistpublisher (Transact-sql)
sp_dropdistpublisher (Transact-sql)
sp_helpdistpublisher (Transact-sql)
Sistem saklı yordamları (Transact-sql)