Işlem yayınlar için güncelleştirme abonelikleri etkinleştirmek

Bu konuda işlem yayınlar için güncelleştirme abonelikleri etkinleştirmek açıklar SQL Server 2012kullanarak SQL Server Management Studioya Transact-SQL.

[!NOT]

Bu özellik Microsoft SQL Server'ın ilerideki bir sürümünde kaldırılacaktır. Yeni geliştirme işlerinde bu özelliği kullanmaktan kaçının ve bu özelliği kullanmakta olan uygulamalarda değişiklik yapmayı planlayın.

Bu Konuda

  • Başlamadan Önce

    Güvenlik

  • Güncelleştirme abonelikleri kullanarak işlem yayınlar için etkinleştirmek için:

    SQL Server Management Studio

    Transact-SQL

Başlamadan Önce

Güvenlik

Mümkün olduğunda, zamanında güvenlik kimlik bilgilerini girmesini ister. Bir komut dosyasında kimlik bilgileri saklamanız gerekir, yetkisiz erişimi önlemek için dosyayı güvenli gerekir.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

SQL Server Management Studio Kullanarak

Işlem yayınlar için güncelleştirme abonelikleri etkinleştirmek Yayın türü Yeni Yayın Sihirbazı sayfası. Bu sihirbazı kullanma hakkında daha fazla bilgi için bkz: Yayın oluşturma. Bir yayın oluşturduktan sonra güncelleştirme aboneliği etkinleştiremiyor.

Güncelleştirme abonelikleri kullanmak için Yeni Abonelik Sihirbazı'nda seçeneklerini de yapılandırmaları gerekir. Daha fazla bilgi için, bkz. İşlem yayınına güncelleştirilebilir bir abonelik oluştur.

Güncelleştirme abonelikleri etkinleştirmek için

  1. Tarih Yayın türü Yeni Yayın Sihirbazı seçin sayfasında güncelleştirilebilir abonelikleri ile işlem yayın.

  2. Tarih Aracısı güvenlik sayfasında, ek olarak anlık görüntü Aracısı ve günlük Okuma Aracısı sıra Okuyucu Aracısı güvenlik ayarlarını belirtin. Queue Reader Agent çalıştığı hesabı için gerekli izinler hakkında daha fazla bilgi için bkz: Çoğaltma aracısı güvenlik modeli.

    [!NOT]

    Yalnızca hemen güncelleştirme abonelikleri kullansanız bile sıra Okuyucu Aracısı yapılandırıldı.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Transact-SQL'i Kullanma

Saklı yordamları kullanarak programsal çoğaltma işlem yayın oluşturma zaman, anında veya kuyruğa alınmış güncelleştirme abonelikleri etkinleştirebilirsiniz.

Hemen güncelleştirme abonelikleri destekleyen bir yayın oluşturmak için

  1. Gerekirse, bir günlük Okuma Aracısı iş yayını veritabanı için oluşturun.

    • Günlük Okuma Aracısı iş yayını veritabanı zaten varsa, adım 2'e gidin.

    • Yayımlanmış bir veritabanı günlük Okuma Aracısı iş var olup olmadığından emin değilseniz idam sp_helplogreader_agent (Transact-sql)Yayını veritabanı üzerinde yayımcı adresindeki. Sonuç kümesi boş ise, bir günlük Okuma Aracısı iş oluşturulmalıdır.

    • Yayımcı tarafında idam sp_addlogreader_agent (Transact-sql). Belirtmek Microsoftaracı için çalıştığı Windows kimlik bilgileri @ job_name ve @ parola. Aracısı SQL Server kimlik doğrulaması için yayımcı bağlanırken kullanacağı, değeri belirtmeniz gerekir 0 için @ publisher_security_mode ve Microsoft  SQL Servergiriş bilgilerini @ publisher_login ve publisher_password @.

  2. Yürütme için yürütme eşdeğerdirsp_addpublication (Transact-sql), bir değer belirterek gerçek parametresi @ allow_sync_tran.

  3. Yayımcı tarafında idam sp_addpublication_snapshot (Transact-sql). Adım 2 için kullanılan yayın adı belirtmek @ yayın ve anlık görüntü Aracısı çalıştığı için Windows kimlik bilgileri @ job_name ve @ parola. Aracısı SQL Server kimlik doğrulaması için yayımcı bağlanırken kullanacağı, değeri belirtmeniz gerekir 0 için @ publisher_security_mode ve SQL Serveriçin oturum açma bilgilerini @ publisher_login ve publisher_password @. Bu bir anlık görüntü Aracısı iş yayını oluşturur.

  4. Makaleleri yayına ekleyin. Daha fazla bilgi için, bkz. Bir makale tanımlamak.

  5. Abone tarafında bir güncelleştirme abonelik için bu yayını oluşturun. Daha fazla bilgi için, bkz. İşlem yayınına güncelleştirilebilir bir abonelik oluştur.

Abonelikleri güncelleştirme sıraya destekleyen bir yayın oluşturmak için

  1. Gerekirse, bir günlük Okuma Aracısı iş yayını veritabanı için oluşturun.

    • Günlük Okuma Aracısı iş yayını veritabanı zaten varsa, adım 2'e gidin.

    • Yayımlanmış bir veritabanı günlük Okuma Aracısı iş var olup olmadığından emin değilseniz idam sp_helplogreader_agent (Transact-sql)Yayını veritabanı üzerinde yayımcı adresindeki. Sonuç kümesi boş ise, bir günlük Okuma Aracısı iş sonra olarak oluşturulması gerekir.

    • Yayımcı tarafında idam sp_addlogreader_agent (Transact-sql). Aracı çalıştığı için Windows kimlik bilgileri belirtmek @ job_name ve @ parola. Aracısı SQL Server kimlik doğrulaması için yayımcı bağlanırken kullanacağı, değeri belirtmeniz gerekir 0 için @ publisher_security_mode ve SQL Serveriçin oturum açma bilgilerini @ publisher_login ve publisher_password @.

  2. Gerekirse, bir sıra Okuma Aracısı iş dağıtımcı oluşturun.

    • Dağıtım veritabanı için bir sıra Okuma Aracısı iş zaten varsa, adım 3'e gidin.

    • Dağıtım veritabanı için bir sıra Okuma Aracısı iş var olup olmadığından emin değilseniz idam sp_helpqreader_agent (Transact-sql)at dağıtımcı dağıtım veritabanı üzerinde. Sonuç kümesi boş ise, bir sıra Okuma Aracısı iş sonra olarak oluşturulması gerekir.

    • Dağıtıcı idam sp_addqreader_agent (Transact-sql). Aracı çalıştığı için Windows kimlik bilgileri belirtmek @ job_name ve @ parola. Sıra Okuyucu Aracısı abone ve Publisher bağlandığında, bu kimlik bilgileri kullanılır. Daha fazla bilgi için, bkz. Çoğaltma aracısı güvenlik modeli.

  3. Yürütme için yürütme eşdeğerdirsp_addpublication (Transact-sql), bir değer belirterek gerçek parametresi @ allow_queued_tran bir pub wins, alt reinit, veya alt kazanç için @ conflict_policy.

  4. Yayımcı tarafında idam sp_addpublication_snapshot (Transact-sql). Adım 3 kullanılan yayın adı belirtmek @ yayın ve anlık görüntü Aracısı çalıştığı için Windows kimlik bilgileri @ snapshot_job_name ve @ parola. Aracısı SQL Server kimlik doğrulaması için yayımcı bağlanırken kullanacağı, değeri belirtmeniz gerekir 0 için @ publisher_security_mode ve SQL Serveriçin oturum açma bilgilerini @ publisher_login ve publisher_password @. Bu bir anlık görüntü Aracısı iş yayını oluşturur.

  5. Makaleleri yayına ekleyin. Daha fazla bilgi için, bkz. Bir makale tanımlamak.

  6. Abone tarafında bir güncelleştirme abonelik için bu yayını oluşturun. Daha fazla bilgi için, bkz. İşlem yayınına güncelleştirilebilir bir abonelik oluştur.

Çakışmayı değiştirmek için izin veren bir yayın İlkesi güncelleştirme abonelikleri sıraya.

  • Yayını veritabanı üzerinde Yayımcı tarafında idam yürütmesp_changepublication (Transact-sql). Değeri belirtmeniz conflict_policy için @ özellik ve istenen çatışma ilke modu pub wins, alt reinit, veya alt kazanç için @ değeri.

Örnek (Transact-sql)

Bu örnek, hem acil hem de kuyruğa alınmış güncelleştirme çekme abonelikleri desteklenen bir yayın oluşturur.

-- To avoid storing the login and password in the script file, the values 
-- are passed into SQLCMD as scripting variables. 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".

--Declarations for adding a transactional publication
DECLARE @publicationDB AS sysname;
DECLARE @publication AS sysname;
DECLARE @login AS sysname;
DECLARE @password AS sysname;
SET @publicationDB = N'AdventureWorks2012'; 
SET @publication = N'AdvWorksProductTran'; 
SET @login = $(Login); 
SET @password = $(Password); 

USE [AdventureWorks]
-- Enable transactional replication on the publication database.
EXEC sp_replicationdboption 
    @dbname=@publicationDB, 
    @optname=N'publish',
    @value = N'true';

-- Execute sp_addlogreader_agent to create the agent job. 
EXEC sp_addlogreader_agent 
    @job_login = @login, 
    @job_password = @password,
    -- Explicitly specify the use of Windows Integrated Authentication (default) 
    -- when connecting to the Publisher.
    @publisher_security_mode = 1;

-- Create a transactional publication that supports immediate updating, 
-- queued updating, and pull subscriptions. 
EXEC sp_addpublication 
    @publication = @publication, 
    @status = N'active',
    @allow_sync_tran = N'true', 
    @allow_queued_tran = N'true',
    @allow_pull = N'true',
    @independent_agent = N'true',
  -- Explicitly declare the related default properties 
    @conflict_policy = N'pub wins';

-- Create a new snapshot job for the publication, using a default schedule.
EXEC sp_addpublication_snapshot 
    @publication = @publication, 
    @job_login = @login, 
    @job_password = @password,
    -- Explicitly specify the use of Windows Integrated Authentication (default) 
    -- when connecting to the Publisher.
    @publisher_security_mode = 1;
GO

--Declarations for adding an article.
DECLARE @publication AS sysname;
DECLARE @article AS sysname;
DECLARE @owner AS sysname;
SET @publication = N'AdvWorksProductTran';
SET @article = N'Product'; 
SET @owner = N'Production'; 

-- Add a horizontally and vertically filtered article for the Product table.
USE [AdventureWorks2012]
EXEC sp_addarticle 
    @publication = @publication, 
    @article = @article, 
    @source_table = @article, 
    @vertical_partition = N'false', 
    @type = N'logbased',
    @source_owner = @owner, 
    @destination_owner = @owner;
GO

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Ayrıca bkz.

Görevler

Set çakışma çözümleme seçenekleri (SQL Server Management Studio'yu) güncelleştirme atılmış

Kavramlar

Işlem çoğaltma için yayın türleri

Işlem çoğaltma için güncelleştirilebilir abonelikleri

Yayın oluşturma

İşlem yayınına güncelleştirilebilir bir abonelik oluştur

Işlem çoğaltma için güncelleştirilebilir abonelikleri

Sqlcmd Scripting değişkenleri ile kullanma