Uygulandığı Öğe
SQL Server 2019 on Windows SQL Server 2022 on Linux (all editions) SQL Server 2022 on Windows (all editions)

Belirtiler

sp_replmonitorsubscriptionpendingcmds saklı yordamı eşler arası (P2P) çoğaltma ile uyumlu değildir. Hatalı sayıda bekleyen komut döndürür. Bu düzeltmeyi uyguladıktan sonra sp_replmonitorsubscriptionpendingcmds P2P çoğaltmasıyla uyumlu olacaktır.

NotÇoğaltma İzleyicisi'nin  "Dağıtılmamış Komutlar" sekmesi, arka planda sp_replmonitorsubscriptionpendingcmds çağırır.

Çözüm

Toplu güncelleştirme bilgileri

Bu sorun, SQL Server için aşağıdaki toplu güncelleştirmelerde düzeltilir:

NotBu toplu güncelleştirmeyi uyguladıktan sonra, MSrepl_originatorstablosunda eski girdiler varsa sp_replmonitorsubscriptionpendingcmds P2P çoğaltması için hatalı sayıda bekleyen komut bildirebilir.

MSrepl_originators tablosunda eski girdiler varsa, sp_replmonitorsubscriptionpendingcmds çalıştırmak SQL Server hata günlüğünde aşağıdaki uyarı iletisini oluşturur:

Uyarı: '<database_name > ' abonelik veritabanı için veritabanı sürümü alınamıyor. sp_replmonitorsubscriptionpendingcmdsP2P çoğaltması için hatalı sayıda bekleyen komut bildirebilir.

Bu sorunu çözmek için eski girdileri MSrepl_originators silin veya sp_replmonitorsubscriptionpendingcmds çalıştırdığınızda abonelik veritabanının doğru "dbversion" değerini subdb_version bağımsız değişkeni olarak geçirin.

İpuçları: Abonelik veritabanının "dbversion" öğesini bulmak için aşağıdaki yöntemlerden birini seçebilirsiniz:

  • Dağıtım veritabanında aşağıdaki sorguyu çalıştırın: select dbversion from MSrepl_originatorswhere publisher_database_id = <Publisher_Database_ID>#x2 and dbname = <Subscriber_Database>Not <Publisher_Database_ID>, <Subscriber_Server> ve <Subscriber_Database> için uygun değerleri değiştirmeniz gerekir.

  • Abonelik veritabanında aşağıdaki sorguyu çalıştırın: declare @current_version int , @currentGuid uniqueidentifierselect @currentGuid = recovery_fork_guid#x2 where database_id = db_id()select @current_version = substring(convert(binary(16), isnull(@currentGuid, 0x0)),1,6)print @current_version

SQL Server için her yeni toplu güncelleştirme, önceki derlemedeki tüm düzeltmeleri ve güvenlik düzeltmelerini içerir. SQL Server sürümünüz için en son derlemeyi yüklemenizi öneririz:

Durum

Microsoft bu sorunun "Uygulandığı öğe" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.

Başvurular

Microsoft'un yazılım güncelleştirmelerini açıklamak için kullandığı terminoloji hakkında bilgi edinin.

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.