Share via


Not eşleşen yayımcı ve abone veri

Yayımcı ve abone veri (verileri eşleşmiyor diğer sözcükler) non-convergent olduğu düşünülür:

  • Farklı sayıda satır en Abone tarafında yayımcı vardır ve bu yayın filtre uygulanmış.yayın filtre uygulanmışsa, satır sayısı farklıdır, beklenen.

  • Bir veya daha çok satır yayımcı sırasında içerik farklı veride ve abone.

Açıklama

Non-convergent çeşitli nedenler için veri yayımcı ve abone olabilir:

  • Verileri salt okunur olarak değerlendirilmelidir bir Abone tarafında güncelleştirildi.Birleştirme çoğaltma, güncelleştirilebilir abonelikler ile işlem çoğaltma veya eşler arası işlem çoğaltma kullanmıyorsanız abonelik veritabanı salt okunur olarak değerlendirilmelidir.

  • Tetikleyicileri, Abone tarafında kullanılır.Tetikleyicileri abone verileri değiştirmek ve Özet Tablo tetikleyicinin bir ROLLBACK veren, güncelleştirilmiş verileri de engelleyebilirsiniz.

  • Komut dosyaları, çoğaltma abone ancak değil yayımcı tarafından yürütülür.

  • Işlem yayın saklı yordam yürütülmesinin çoğaltma sırasında abone farklı sonuçlar üretir.

  • Kısıtlama ihlali veya diğer sorunları satır eklenen, güncelleştirilen veya Abone tarafında silinmiş alınmasını.

Kullanıcı eylem

Aşağıdaki eylemleri convergent olmayan veri olup olmadığını belirlemek ve yakınsama getirmeyi açıklamaktadır:

  1. Veri olmayan-doğrulama kullanarak convergent olup olmadığını veya tablediff utility:

    • Dağıtım aracısını veya Birleştirme Aracısı çalıştırabilir, ikili sağlama toplamı doğrulaması'nı çalıştırarak, veri eksik olup olmadığını belirleyin.Satır sayısı doğrulaması da kullanabilirsiniz, ancak bu yöntem veri içeriğini farklılıkları gösterir.Daha fazla bilgi için bkz: Doğrulama veri yinelenmiş..

    • Dağıtım aracısını veya birleştirme aracısı çalıştırılamıyor, verileri çalıştırarak convergent olmayan olup olmadığını tablediff yardımcı programı.Çoğaltılan tablolarda bu yardımcı programı kullanma hakkında daha fazla bilgi için bkz: Nasıl Yapılır: Karşılaştırma (çoğaltma programlama) değişiklikleri için tablolar yinelenmiş..

  2. Verileri convergent olmayan, kullanabileceğiniz tablediff Oluşturulacak bir yardımcı programıTransact-SQL Yakınsama veri getirmek için komut dosyası. Daha fazla bilgi için bkz: tablediff yardımcı programı.

Non-yakınsama nedeni adresleme

Aşağıdaki eylemleri "Açıklama" bölümünde listelenen nedenlerden adres:

  • Abone dışında çoğaltma sırasında veriler güncelleştirilir:

  • Tetikleyicileri, Abone tarafında kullanılır.Bunlar yakınsaması veya diğer sorunları neden olmaz, abone adresindeki Tetikleyicileri düzgün yönetiliyor olması gerekir:

    • Tetikleyiciler, yalnızca veri değişiklikleri at neden bir abone birleştirme çoğaltma, güncelleştirilebilir abonelikler ile işlem çoğaltma veya eşler arası işlem çoğaltma kullanıyorsanız.Daha fazla bilgi için bkz: Birleştirme çoğaltması genel bakış ve Işlem çoğaltması için yayın türleri.

    • Çoğu durumda, tetikleyici IÇIN NOT çoğaltma seçeneğini kullanmalısınız.Bir izleme içine veri ekleyen bir tetikleyici dikkate tablo: Kullanıcı satır eklediğinde, özgün olarak tetiğin ateşlenmesine ve izleme tablosuna bir satır girmek için uygundur, ancak abone için bir veri çoğaltıldığında izleme tablosunda eklenmekte gereksiz bir satır olacak çünkü tetikleyici harekete değil.

      Tetikleyici bir ROLLBACK deyim içerir ve tetikleyici NOT çoğaltma, IÇIN bu seçeneği kullanmak için bir abonelik çoğaltılmış satırları uygulanmayabilir.

    • Işlem çoğaltma için XACT_ABORT ayarı ile ilgili ve bir tetikleyici yürütme ve ROLLBACK deyimi kullanarak ek konuları vardır.Daha fazla bilgi için "Tetikleyicileri" bölümüne bakın. Işlem çoğaltma ile ilgili konuları.

  • Komut dosyaları, çoğaltma abone ancak değil yayımcı tarafından yürütülür.

    The @pre_snapshot_script and @post_snapshot_script parameters of sp_addpublication and sp_addmergepublication allow you to specify scripts to run before and after the anlık görüntü is applied.Daha fazla bilgi için bkz: Önce ve sonra rapor anlık görüntüsünü uygulanan komut dosyalarını çalıştırma. Saklı yordam sp_addscriptexec sağlar yürütmek eşitleme işlemi sırasında bir komut dosyası.Daha fazla bilgi için bkz: Nasıl Yapılır: Komut dosyaları (çoğaltma Transact-SQL programlama) eşitleme sırasında yürütmek.

    Bu komut dosyaları, genellikle, oturumlar, Abone tarafında ekleme gibi yönetimsel görevleri için kullanılır.Salt okunur olarak değerlendirilmelidir bir abone verileri güncelleştirmek için kullanılan komut dosyaları, yönetici bu yakınsaması olur emin olmalısınız.

  • Çoğaltma saklı yordam yürütülmesinin işlem yayım sırasında abone farklı sonuçlar üretir.

    saklı yordam yürütülmesini çoğalttıysanız, aboneliğin başlatıldığında yordam tanımı için abone çoğaltılır; yordamı Yayımcı tarafında çalıştırıldığında, çoğaltma abone altında ilgili yordamı çalıştırır..Daha fazla bilgi için bkz: Işlem çoğaltma, yayımlama saklı yordamı yürütme.

    saklı yordam yayımcı farklı veri abone veya davranır farklı bir eylem gerçekleştirir yakınsaması oluşabilir.Bir hesaplama yapar ve sonra bu hesaplamayı temel veri ekler bir yordam kullanabilirsiniz.Hesaplama sırasında abone farklı verilerini esas alıyorsa, abone süzülür, Abone tarafında eklenen sonucu farklı olabilir veya ekleme hiç ortaya çıkabilir..

  • Kısıtlama ihlali veya diğer sorunları satır eklenen, güncelleştirilen veya Abone tarafında silinmiş alınmasını.

    Işlem çoğaltma için kısıtlama ihlalleri hata olarak kabul edilir; varsayılan olarak, bunlar karşılaştı, eşitlemeyi durdurmak dağıtım aracı neden (Bu hataları atlanıyor hakkında daha fazla bilgi için bkz: Işlem çoğaltma hatalar atlanıyor.). Birleştirme çoğaltma, kısıtlama ihlali çakışması kabul edilir; günlüğe kaydedilir, ancak eşitlemeyi durdurmak Birleştirme Aracısı neden olmaz.Her iki tür çoğaltma için kısıtlama ihlalleri yakınsama için bir ekleme, güncelleştirme veya bir düğümde başarılı silme yol açabilecek başka başarılı olmaz.

    Tablo yayımlandığında, varsayılan şemayı seçenekleri IÇIN NOT çoğaltma seçeneği küme Abonelik veritabanındaki yabancı anahtar kısıtlamalarını ve Denetim kısıtlamalarını oluşturulacağını belirtin.Uygulama kısıtlamaları için farklı ayarlar gerektiriyorsa, şema seçenekleri değiştirin.Daha fazla bilgi için bkz: Nasıl Yapılır: Schema seçenekleri (SQL Server Management Studio'yu) belirtin. ve Nasıl Yapılır: (Çoğaltma Transact-SQL programlama) şema seçeneklerini belirleme.

See Also

Concepts