Aracılığıyla paylaş


Gelişmiş birleştirme çoğaltma çakışma algılaması ve Çözümlemesi

Publisher ve abone bağlı olduğundan ve eşitleme gerçekleşir, birleştirme aracı herhangi bir çakışma olup olmadığını algılar. Birleştirme Aracısı çakışması algılanırsa, bir çakışma çözümleyici (bir makale yayın eklendiğinde bu belirtilir) kullandığı veri kabul ve diğer sitelere yayılma belirlemek için.

[!NOT]

Bir abone yayımcı ile eşitler rağmen bir abone ve yayımcı yapılan güncelleştirmeler yerine farklı aboneleri yapılan güncelleştirmeler arasındaki çakışmaları genellikle oluşur.

Bu konuda açıklanan aşağıdaki seçenekleri çakışma algılaması ve çözümlemesi davranışını bağlıdır:

  • Olup sütun düzeyinde izleme, satır düzeyinde izleme veya mantıksal kayıt düzeyinde izleme belirtin.

  • İster varsayılan öncelik tabanlı çözüm mekanizması belirtebilir veya makale çözümleyici belirtin. Makale çözümleyici olabilir:

    • A iş mantığı işleyicisi yönetilen kodunda yazılmış.

    • com tabanlı özel çözümleyici.

    • Tarafından sağlanan bir com tabanlı çözümleyici Microsoft.

    Varsayılan çözümleme mekanizmasını kullanılır, davranışı daha da kullanılan abonelik türüne göre belirlenir: istemci veya sunucu.

Çakışma algılama

Bir makale için bir veri değişikliği bir çakışma nitelendirir veya çakışma izleme türüne bağlıdır ayarlayın:

  • Sütun düzeyinde çakışma izleme seçerseniz, aynı sütun birden fazla çoğaltma düğümdeki aynı satırda değişiklik yapılırsa çakışma kabul edilir.

  • Satır düzeyinde izleme seçerseniz, herhangi bir sütun (sütun karşılık gelen satırları etkilenen aynı olmaması gerekir) birden fazla çoğaltma düğümdeki aynı satırda değişiklik yapılırsa çakışma kabul edilir.

  • Mantıksal kayıt düzeyinde izleme seçerseniz, herhangi bir satıra birden fazla çoğaltma düğümdeki (karşılık gelen satırları etkilenen sütun aynı olmaması gerekir) aynı mantıksal kayıttaki değişiklikler yapılırsa çakışma kabul edilir.

Daha fazla bilgi için, bkz. Algılama ve mantıksal kayıtlar içinde çakışmaları çözme.

Çakışma izleme ve çözümleme düzeyi bir makale belirtmek için bkz: Birleştirme makaleleri için çakışma izleme ve çözümleme düzeyi belirtin.

Çakışma çözümleme

Sonra bir çakışma algılandığında, birleştirme aracı seçili çakışma çözümleyici başlatır ve çözümleyici çakışmayı kazananı belirlemek için kullanır. Kazanan satır Publisher ve abone uygulanır ve veri kaybetme satırdan bir çakışma tablosuna yazılır. Hemen çözümleyici yürütür sonra etkileşimli olarak çakışmaları seçmediğiniz sürece çatışmalar çözülür.

Çözümleyici türleri

Birleştirme çoğaltması, çatışma çözümü makale düzeyinde gerçekleşir. Oluşan çeşitli makaleler yayınlar için farklı Makaleler sunan farklı çakışma çözümleyiciler, ya da bir makale, çeşitli makaleleri veya yayını oluşan tüm makaleler sunan aynı çakışma çözümleyici olabilir.

Varsayılan öncelik tabanlı çakışma çözümleyici kullanmayı planlıyorsanız, bir makale çözümleyici özelliğini ayarlamanız gerekmez. Varsayılan çözümleyici yerine bir makale çözümleyici kullanın isterseniz, o-ecek kullanma yayımcı kullanılabilir bir çözümleyici seçerek bir makale çözümleyici özelliği ayarlamanız gerekir. Çözümleyici için geçmesi gereken herhangi bir bilgi çözümleyici bilgi özelliğinde de belirtilebilir.

Çoğaltma teklifleri dört tür çakışması çözümleyiciler Birleştir:

  • Varsayılan öncelik tabanlı çakışma çözümleyici

    Varsayılan çözümleme mekanizmasını, abonelik istemci abonelik veya sunucu abonelik olmasına bağlı olarak farklı davranır. Sunucu abonelikleri bireysel abonelere öncelik değerleri atamak; herhangi bir çakışma düğümdeki en yüksek öncelik kazanç ile yapılan değişiklikler. İstemci abonelikleri için yayımcı için yazılmış ilk değişiklik çakışmayı kazanır.

    Abonelik oluşturulduktan sonra bir türden diğerine değiştirilemez.

  • Iş mantığı işleyicisi

    İş mantığı işleyicisi çerçevesi bir yönetilen kod derleme birleştirme eşitleme işlemi sırasında çağrılan yazmanızı sağlar. Derleme, eşitleme sırasında çakışma ve diğer koşullara çok sayıda yanıt iş mantığını içerir. Daha fazla bilgi için, bkz. Business Logic birleştirme eşitleme sırasında çalıştırma.

  • Bir com tabanlı özel çözümleyici

    Birleştirme çoğaltması sağlayan bir API çözümleyiciler dilleri com nesneleri olarak gibi yazmak için Microsoft  Visual C++ya Microsoft   Visual Basic. Daha fazla bilgi için, bkz. com tabanlı özel çözümleyiciler.

  • Tarafından sağlanan bir com tabanlı çözümleyiciMicrosoft

    Microsoft SQL Servercom tabanlı çözümleyiciler içerir. Daha fazla bilgi için, bkz. Microsoft com tabanlı çözümleyiciler.

Çözümleyici uygun türü seçme hakkında daha fazla bilgi için bkz: Bir çözücü seçme.

[!NOT]

Bazı makale çözümleyiciler, yalnızca belirli işlemler için çakışmaları işlemek için yazılır. Örneğin bir çözümleyici güncelleştirmeleri işlemek ancak ekler veya siler. Varsayılan öncelik tabanlı çakışma çözümleyici çakışmaları makale çözümleyici tarafından ele değil işler.

Bir birleştirme abonelik türü ve çakışma çözümleme öncelik belirlemek için bkz:

Etkileşimli çözümleyici

Çoğaltma varsayılan öncelik tabanlı çakışma çözümleyici veya makale çözümleyici ile birlikte kullanılabilen bir etkileşimli çözümleyici kullanıcı arabirimi sağlar. İsteğe bağlı eşitleme üzerinden gerçekleştirirken MicrosoftWindows Eşitleme Yöneticisi'ni, etkileşimli çözümleyici çakışma veri çalışma anında görüntüler ve çakışmaları nasıl seçmenize olanak sağlar. Etkileşimli çözümlemesine olanak verir ve etkileşimli çözümleyici başlatma hakkında daha fazla bilgi için bkz: Etkileşimli çakışma çözümleme.

Çakışmalarını görüntüleme

Çakışmaları görüntülemek için en basit yol, mevcut Çoğaltma Çakışması Görüntüleyicisi kullanmaktır SQL Server Management Studio( SQL Server de çakışma tabloları Sorgulanacak izin saklı yordamlar sağlar.). Çakışma Görüntüleyici ve etkileşimli çözümleyici benzer araçlardır, ancak etkileşimli çözümleyici eşitleme gerçekleşir gibi Oysa Çakışma Görüntüleyici'yi, sonra onlar karar çakışmaları görüntülemek için tasarlanmıştır çakışmaları çözmenize olanak sağlar. Çakışma meta veriler hala (çakışma meta verileri varsayılan olarak 14 gün korunur) sistem tabloları kullanılabilir, çakışma çözünürlüğü sonuçlar Çakışma Görüntüleyici'yi geçersiz kılar ama doğrudan müdahale düzenli olarak, gerekirse etkileşimli çözümleyici kullanarak düşünün.

[!NOT]

Mantıksal kayıtları ile ilgili çakışma, Çakışma Görüntüleyici'de görüntülenmez. Bu çakışmalar hakkındaki bilgileri görüntülemek için çoğaltma depolanan yordamlar kullanın. Daha fazla bilgi için, bkz. Birleştirme yayınları (çoğaltma Transact-sql programlama) için çakışma bilgilerini görüntüleme.

Çakışma Görüntüleyici'yi üç sistem tablodan alınan bilgileri görüntüler:

  • Çoğaltma oluşturur her tablo için bir çakışma tablosu formunda bir adla bir birleştirme makale MSmerge_conflict_<PublicationName>_<ArticleName>.

    Çakışma tabloları temel aldıkları tabloları aynı yapıya sahip. Bu tablolardan biri bir satırda (kazanan satır gerçek kullanıcı tabloda sürümüdür) bir çakışma satır kaybeden sürümü oluşur.

  • MSmerge_conflicts_info tablo çakışma, çakışma türü hakkında bilgi sağlar.

  • Sysmergearticles tablo tanımlar hangi kullanıcı tabloları çakışma olan tablolar ve çakışma tabloları hakkında bilgi sağlar.

Varsayılan olarak, çakışma bilgisi saklanır:

  • 90RTM yayın uyumluluk düzeyi ise, abone ve Publisher veya daha yüksek.

  • Yayın uyumluluk düzeyi 80RTM düşükse yayımcı adresindeki.

  • Publisher aboneleri çalıştırıyorsanız, SQL Server Compact. Çakışma veri can't depolanan Tarih SQL Server Compactaboneleri.

Çakışmaları görüntülemek için

Ayrıca bkz.

Kavramlar

Verileri eşitleme