Aracılığıyla paylaş


Abonelik Süre Sonu ve Devre Dışı Bırakma

Şunlar için geçerlidir:SQL ServerAzure SQL Yönetilen Örneği

Abonelikler devre dışı bırakılabilir veya belirtilen saklama süresi içinde eşitlenmemişse süresi dolabilir. Gerçekleştirilen eylem, çoğaltma türüne ve aşılan saklama süresine bağlıdır.

Bekletme sürelerini ayarlamak için bkz. Abonelikler için Sona Erme Süresini Ayarlama, İşlem Yayınları için Dağıtım Saklama Süresini Ayarlama (SQL Server Management Studio) ve Yayımlama ve Dağıtımı Yapılandırma.

İşlemsel Çoğaltma

İşlem çoğaltması en uzun dağıtım saklama süresini (@max_distretentionsp_adddistributiondb parametresi (Transact-SQL)) ve yayın saklama süresini (@retentionsp_addpublication parametresi (Transact-SQL)) kullanır:

  • Abonelik en uzun dağıtım saklama süresi (varsayılan olarak 72 saat) içinde eşitlenmemişse ve dağıtım veritabanında Aboneye teslim edilmemiş değişiklikler varsa, Dağıtımcı üzerinde çalışan Süresi Dolan Abonelik temizleme işi tarafından abonelik devre dışı olarak işaretlenir. Aboneliğin yeniden başlatılması gerekir.

  • Bir abonelik, yayın saklama süresi içinde (varsayılan olarak 336 saat) eşitlenmezse, aboneliğin süresi dolar ve Publisher'da çalışan Süresi Dolan Abonelik Temizleme işi tarafından silinir. ( KB4014798 düzeltmeden önce işin adı Dağıtım temizleme idi.) Abonelik yeniden oluşturulup eşitlenmelidir.

    Anında iletme aboneliğinin süresi dolarsa bu abonelik tamamen kaldırılır, ancak çekme abonelikleri kaldırılmaz. Abone'de çekme aboneliklerini temizlemeniz gerekir. Daha fazla bilgi için Çekme Aboneliğini Silme başlığına bakınız.

Birleştirme Replikasyonu

Birleştirme çoğaltması yayın saklama süresini (@retention@retention_period_unit ve parametreleri) kullanır. Aboneliğin süresi dolduğunda, aboneliğin meta verileri kaldırıldığından aboneliğin yeniden başlatılması gerekir. Yeniden başlatılmayan abonelikler, Yayımcı üzerinde çalışan Süresi Dolmuş Abonelik Temizleme işi tarafından temizlenir. Varsayılan olarak, bu iş günlük olarak çalışır; yayın saklama süresinin iki katı süredir eşitlenmemiş tüm bildirim aboneliklerini kaldırır. Örneğin:

  • Yayının saklama süresi 14 günse, abonelik 14 gün içinde eşitlenmezse sona erebilir.

    Publisher SQL Server 2005 (9.x) veya sonraki bir sürüm çalıştırıyorsa ve aboneliğin aracısı SQL Server 2005 (9.x) veya sonraki bir sürümden geliyorsa, aboneliğin süresi yalnızca söz konusu aboneliğin bölümündeki verilerde değişiklik yapılmışsa sona erer. Örneğin, abonenin yalnızca Almanya'daki müşteriler için müşteri verilerini aldığını varsayalım. Bekletme süresi 14 gün olarak ayarlanırsa, aboneliğin süresi yalnızca son 14 gün içinde Alman müşteri verilerinde değişiklik yapılmışsa 14. günde sona erer.

  • Son eşitlemeden 14 gün ile 27 gün sonra abonelik yeniden başlatılabilir.

  • Son eşitlemeden 28 gün sonra abonelik Süresi dolmuş abonelik temizleme işi tarafından iptal edilir. Anında iletme aboneliğinin süresi dolarsa bu abonelik tamamen kaldırılır, ancak çekme abonelikleri kaldırılmaz. Abone'de pull aboneliklerini temizlemeniz gerekir. Daha fazla bilgi için bkz. Çekme Aboneliğini Silme.

Birleştirme Yayınları için Yayın Saklama Süresini Ayarlamayla İlgili Önemli Noktalar

Birleştirme yayınları için bekletme süresini ayarlarken aşağıdaki noktaları göz önünde bulundurun:

  • Birleştirme yayınları için saklama süresi, farklı saat dilimlerindeki aboneleri kapsayacak şekilde 24 saatlik bir tolerans süresine sahiptir. Örneğin, bir günlük saklama süresi ayarlarsanız, gerçek saklama süresi 48 saattir.

  • Birleştirme çoğaltma meta verilerinin temizlenmesi yayının saklama süresine bağlıdır.

    • Çoğaltma, bekletme süresine ulaşılana kadar yayın ve abonelik veritabanlarındaki meta verileri temizleyemez. Çoğaltma performansını olumsuz etkileyebileceğinden saklama süresi için yüksek bir değer belirtirken dikkatli olun. Tüm Abonelerin bu süre içinde düzenli olarak eşitleneceğini güvenilir bir şekilde tahmin edebilirseniz daha düşük bir ayar kullanmanız önerilir.

    • Aboneliklerin süresinin hiç dolmadığını belirtmek mümkündür (için 0 değeridir), ancak meta veriler temizlenemediğinden @retentionbu değeri kullanmamanızı kesinlikle öneririz.

  • Yeniden yayımlayanların saklama süresi, özgün Yayımcı'da ayarlanan saklama süresine eşit veya ondan küçük bir değere ayarlanmalıdır. Tüm Yayımcılar ve diğer eşitleme ortakları için aynı yayın bekletme değerlerini de kullanmanız gerekir. Farklı değerlerin kullanılması yakınsamama sorunlarına neden olabilir. Yayın saklama değerini değiştirmeniz gerekiyorsa, verilerin yakınsamamasını önlemek için Aboneyi yeniden başlatın.

  • Temizleme işleminden sonra yayın saklama süresi artırılırsa ve abonelik Publisher ile birleştirmeye çalışırsa (meta verileri zaten silmişse), artan bekletme değeri nedeniyle aboneliğin süresi dolmaz. Ancak, Aboneye yapılan değişiklikleri indirmek için Yayımcının yeterli meta verisi yoktur ve bu da yakınsama olmamasına neden olur.