Aracılığıyla paylaş


Nasıl Yapılır: Bir gönderme temelli abonelik (RMO programlama) oluşturma

gönderme abonelikleri çoğaltma Management Objects (RMO) kullanarak programlı olarak oluşturabilirsiniz.gönderme temelli abonelik oluşturmak için kullandığınız RMO sınıfları, aboneliğin oluşturulduğu yayın türüne bağlıdır.

Security noteSecurity Note:

Olanaklıysa, zamanında güvenlik kimlik bilgileri bilgilerini girmesini ister.Kimlik bilgileri saklamanız gerekir, kullanmak Şifreleme Hizmetleri tarafından sağlananMicrosoft Wındows .NET framework'nı tıklatın.

Anlık görüntü veya işlem bir gönderme temelli abonelik oluşturmak için yayın

  1. Yayımcı bağlantısını kullanarak oluşturduğunuz ServerConnection sınıf.

  2. örnek TransPublication 1. adımdaki Yayımcı bağlantısı kullanarak sınıf'ı tıklatın. Belirtin Name(), DatabaseName(), ve ConnectionContext().

  3. Call LoadProperties() yöntem. Bu yöntem döndürüyorsa false, 2. adımda belirtilen özellikleri yanlıştır veya yayın sunucuda yok.

  4. Bit düzeyinde mantıksal AND (gerçekleştir& Visual C# ve And Visual Basic'te) arasında Attributes() özellik ve AllowPush(). Sonuç None(), küme Attributes() bit düzeyinde mantıksal OR (sonucuna| Visual C# ve Or Visual Basic'te) arasında Attributes() ve AllowPush(). Sonra arama CommitPropertyChanges() gönderme abonelikleri etkinleştirmek için .

  5. abonelik veritabanı yoksa, bunu kullanarak oluşturduğunuz Database sınıf. Daha fazla bilgi için bkz: Oluşturma, değiştirme ve veritabanları kaldırılıyor.

  6. örnek TransSubscription sınıf.

  7. küme Aşağıdaki Abonelik özellikleri:

    • The ServerConnection to the Yayımcı created in step 1 for ConnectionContext().

    • Için Abonelik veritabanının adı SubscriptionDBName().

    • Abone için adı SubscriberName().

    • Için yayın veritabanının adı DatabaseName().

    • yayın adı PublicationName().

    • The Login() and Password() or SecurePassword() fields of SynchronizationAgentProcessSecurity() to provide the kimlik bilgileri for the Microsoft Windows account under which the Distribution Agent runs at the dağıtımcı. Bu hesabın, yerel bağlantılar için dağıtımcı yapmak ve Windows kimlik doğrulaması kullanarak uzak bağlantıları sağlamak için kullanılır.

      Not

      Ayarı SynchronizationAgentProcessSecurity() Abonelik bir üyesi tarafından oluşturulduğunda gerekmez sysadmin sabit sunucu rolü, ancak önerilir. Aracı, bu durumda, SQL Server Agent hesabın özelliklerini.Daha fazla bilgi için bkz: Çoğaltma aracısı güvenlik modeli.

    • (Isteğe bağlı) Değeri true (varsayılan) için CreateSyncAgentByDefault() eşitlemek için kullanılan bir aracı iþi oluþturmak için abonelik. Belirttiğiniz false, aboneliğin yalnızca bir program aracılığıyla eşitlenebilir.

    • (Isteğe bağlı) küme SqlStandardLogin() ve SqlStandardPassword() veya SecureSqlStandardPassword() alanları SubscriberSecurity() SQL Server kimlik doğrulaması için abone bağlanmak için kullanırken.

  8. Call Create() yöntem.

    Security noteSecurity Note:

    gönderme temelli abonelik sırasında uzak Dağıtımcı, tüm özellikler için sağlanan değerler ile yayımcı oluştururken dahil SynchronizationAgentProcessSecurity(), dağıtıcı düz metin olarak gönderilir. Yayımcı, uzak Dağıtımcı önce edinilecek arasındaki bağlantıyı şifrelemek Create() yöntem. Daha fazla bilgi için bkz: SQL Server bağlantıları için şifreleme.

Bir mektup birleştirme için gönderme temelli abonelik oluşturmak için yayın

  1. Yayımcı bağlantısını kullanarak oluşturduğunuz ServerConnection sınıf.

  2. örnek MergePublication 1. adımdaki Yayımcı bağlantısı kullanarak sınıf'ı tıklatın. Belirtin Name(), DatabaseName(), ve ConnectionContext().

  3. Call LoadProperties() yöntem. Bu yöntem döndürüyorsa false, 2. adımda belirtilen özellikleri yanlıştır veya yayın sunucuda yok.

  4. Bit düzeyinde mantıksal AND (gerçekleştir& Visual C# ve And Visual Basic'te) arasında Attributes() özellik ve AllowPush(). Sonuç None(), küme Attributes() bit düzeyinde mantıksal OR (sonucuna| Visual C# ve Or Visual Basic'te) arasında Attributes() ve AllowPush(). Sonra arama CommitPropertyChanges() gönderme abonelikleri etkinleştirmek için .

  5. abonelik veritabanı yoksa, bunu kullanarak oluşturduğunuz Database sınıf. Daha fazla bilgi için bkz: Oluşturma, değiştirme ve veritabanları kaldırılıyor.

  6. örnek MergeSubscription sınıf.

  7. küme Aşağıdaki Abonelik özellikleri:

    • The ServerConnection to the Yayımcı created in step 1 for ConnectionContext().

    • Için Abonelik veritabanının adı SubscriptionDBName().

    • Abone için adı SubscriberName().

    • Için yayın veritabanının adı DatabaseName().

    • yayın adı PublicationName().

    • The Login() and Password() or SecurePassword() fields of SynchronizationAgentProcessSecurity() to provide the kimlik bilgileri for the Microsoft Windows account under which the Merge Agent runs at the dağıtımcı. Bu hesabın, yerel bağlantılar için dağıtımcı yapmak ve Windows kimlik doğrulaması kullanarak uzak bağlantıları sağlamak için kullanılır.

      Not

      Ayarı SynchronizationAgentProcessSecurity() Abonelik bir üyesi tarafından oluşturulduğunda gerekmez sysadmin sabit sunucu rolü, ancak önerilir. Aracı, bu durumda, SQL Server Agent hesabın özelliklerini.Daha fazla bilgi için bkz: Çoğaltma aracısı güvenlik modeli.

    • (Isteğe bağlı) Değeri true (varsayılan) için CreateSyncAgentByDefault() eşitlemek için kullanılan bir aracı iþi oluþturmak için abonelik. Belirttiğiniz false, aboneliğin yalnızca bir program aracılığıyla eşitlenebilir.

    • (Isteğe bağlı) küme SqlStandardLogin() ve SqlStandardPassword() veya SecureSqlStandardPassword() alanları SubscriberSecurity() SQL Server kimlik doğrulaması için abone bağlanmak için kullanırken.

    • (Isteğe bağlı) küme SqlStandardLogin() ve SqlStandardPassword() veya SecureSqlStandardPassword() alanları PublisherSecurity() Yayımcıya bağlanmak için SQL Server kimlik doğrulaması kullanıldığında.

  8. Call Create() yöntem.

    Security noteSecurity Note:

    gönderme temelli abonelik sırasında uzak Dağıtımcı, tüm özellikler için sağlanan değerler ile yayımcı oluştururken dahil SynchronizationAgentProcessSecurity(), dağıtıcı düz metin olarak gönderilir. Yayımcı, uzak Dağıtımcı önce edinilecek arasındaki bağlantıyı şifrelemek Create() yöntem. Daha fazla bilgi için bkz: SQL Server bağlantıları için şifreleme.

Example

Bu örnek yeni bir gönderme temelli abonelik için bir işlem oluşturur yayın.Windows Dağıtım Aracı'nı çalıştırmak için kullandığınız kimlik bilgilerini hesap iş zamanında geçirilir.

Bu örnek yeni bir gönderme temelli abonelik birleştirme yayınına oluşturur.Birleştirme Aracısı işi çalıştırmak için kullandığınız Windows hesabı kimlik bilgileri, zamanında geçirilir.