Microsoft hesabıyla oturum açın
Oturum açın veya hesap oluşturun.
Merhaba,
Farklı bir hesap seçin.
Birden çok hesabınız var
Oturum açmak istediğiniz hesabı seçin.

Belirtiler

Aşağıdaki senaryoyu inceleyin:

  • Microsoft SQL Server 2014 veya Microsoft SQL Server 2012 Service Pack 2 (SP2) ' de, çalışırken yükseltmenin bir parçası olarak bir kullanılabilirlik grubunun ikincil çoğaltmasını barındıran bir sunucuda çalışıyor olmalısınız.

  • Aşağıdaki güncelleştirmelerden birini SQL Server yüklemesine uyguladıysanız:

    • SQL Server 2014 toplu güncelleştirme 5

    • SQL Server 2012 Service Pack 2 toplu güncelleştirme 4

    • SQL Server 2012 Service Pack 2 toplu güncelleştirme 3

    Önemli Bu makalede açıklanan düzeltme, bu toplu güncelleştirmelerin yerini almıştır. Bunu henüz yapmadıysanız bu güncelleştirmeleri yüklemeyin.

  • Toplu güncelleştirmeyi yüklemeyi sonlandırmak için bu ikincil yinelemeyi yeniden başlatın.

  • Güncelleştirilmiş ikincil yinelemeyi birincil role geçiş yapan kullanılabilirlik grubunun yerine geçer.

Bu senaryoda, SQL Server çalıştıran sunucuda aşağıdaki belirtilerden bir veya daha fazlasına karşılaşabilirsiniz ve şimdi kullanılabilirlik grubunuzun birincil çoğaltmasını barındırıyor olabilir:

  • İkincil yinelemeler "EŞITLEME yok" olarak bildirilir.

  • Sys.dm_exec_requests sorgulamada, Kullanıcı oturumları ve komutu "DB_STARTUP" olarak bildirilen bir oturum arasındaki kesintili kilit engelleme Denetim noktası ile DB_STARTUP komutları arasında engelleme de fark edebilirsiniz.

  • Kullanılabilirlik veritabanlarından birinin kurtarıldığı oturumu içeren kilitlenmeler SQL Server hata günlüğünde bildirilir. Bu Günlükler şuna benzer: <date/time> spid<xx> Recovery is writing a checkpoint in database <dbname/dbid>. This isan informational message only. No user action is required.<date/time> spid<xx> Recovery completed for database <dbname/dbid> in <x> second(s) (analysis<x> ms, redo <x> ms, undo <x> ms.) This is an informational message only. No user action is required.…<date/time> spid<xx> Error: 1205, Severity: 13, State: 28.<date/time> spid<xx> Transaction (Process ID <xx>) was deadlocked on lock resources with anotherprocess and has been chosen as the deadlock victim. Rerun the transaction.

  • Microsoft SQL Server hizmet Aracısı 'nın kullanılabilirlik veritabanınız etkinleştirilmişse, kullanılabilirlik veritabanınızdaki iletiler başarıyla işlenmeyebilir. Profiler izleme aracını başlatır ve "Broker: Ileti sınıflandırma" olayının yakalanması durumunda aşağıdaki olay yakalanır:

    9791, gönderenin veritabanında devre dışı bırakılmıştır

Not Bu bir sorun değil. Bu sorunla karşılaşmadan bu toplu güncelleştirmeleri bir AlwaysOn yapılandırmasına uygulayabilirsiniz. Bu toplu güncelleştirmeleri zaten uyguladıysanız ve bu sorunla karşılaşmıyorsanız, sisteminiz etkilenmez ve bu bilgiler size uygulanmaz.

Neden

Bu sorun, sistem iş parçacıkları ve kullanıcı bağlantıları arasında bazen bir yarış durumu oluşduğundan oluşur. Bu işlem, toplu güncelleştirmenin düzeltme eki olan mantığının güncelleştirme işlemini tamamlamak için gereken kilitleri sağlamasını engeller.

Çözüm

Bu sorunu çözmek için, aşağıdaki kritik isteğe bağlı (COD) düzeltmeyi uygulayın:

3034679 Düzeltme: AlwaysOn kullanılabilirlik grupları EŞITLENMIYOR olarak bildirilebilirÖnemli Aşağıdaki toplu güncelleştirmeler yerine bu COD düzeltmesini uygulamalısınız:

  • SQL Server 2014 toplu güncelleştirme 5

  • SQL Server 2012 Service Pack 2 toplu güncelleştirme 4

  • SQL Server 2012 Service Pack 2 toplu güncelleştirme 3

Not Bu toplu güncelleştirmeleri zaten uyguladıysanız, bu sorunu çözmek için aşağıdaki iş yerini kullanmalısınız.

Geçici Çözüm

Bu sorun, veritabanları birincil role geçiş yaparken Kullanıcı oturumu ile yükseltme oturumu arasındaki çekişme nedeniyle nedeniyle, veritabanlarının bu durumdan kurtarılmasına olanak tanımak için bu çekişmeyi kaldırmanız gerekir. Bu sorunu çözmek için aşağıdaki adımları izleyin:

  1. Belirtilen sırayla aşağıdaki yöntemleri deneyin.

    Yöntem 1: veritabanı erişimini kaldırınVeritabanları "Belirtiler" bölümünde açıklanan belirtilerle karşılaşıyorsa, kilit önleme koşulunu ortadan kaldırmak için aşağıdaki adımlardan birini veya her ikisini kullanın:

    • Kullanılabilirlik veritabanlarında kilit engellemeye gerçekleştiği oturumları bulmak için sorgu sys.dm_exec_requests . Bu oturumları sonlandırmak için KILL deyimini kullanın.

    • Kullanılabilirlik veritabanlarına erişen uygulamayı devre dışı bırakın veya durdurun.

    Yöntem 1 sorunu çözmezse, Yöntem 2 ' ye gidin.

    Yöntem 2: SQL Server ana bilgisayar sunucusunu yeniden başlatınUygulama erişimi ve Kullanıcı erişimi hala devre dışı bırakıldığında, etkilenen kullanılabilirlik veritabanlarını barındıran SQL Server örneğini yeniden başlatın. Bunu yapmak için şu adımları izleyin:

    1. Kullanılabilirlik grubunun otomatik yük devretmesini devre dışı bırakın.

    2. Birincil yinelemeyi barındıran SQL Server 'ın etkilenen örneğini yeniden başlatın.

    3. Kullanılabilirlik grubunun otomatik yük devretmesini etkinleştirin.

  2. Etkilenen veritabanları tümüyle kurtardıktan sonra uygulama ve Kullanıcı bağlantısını yeniden kurma.

Durum

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

Başvurular

Bu sorundan etkilenen toplu güncelleştirmeler hakkında daha fazla bilgi için, aşağıdaki Microsoft Bilgi Bankası makalelerine bakın:

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.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.

Bu bilgi yararlı oldu mu?

Dil kalitesinden ne kadar memnunsunuz?
Deneyiminizi ne etkiledi?
Gönder’e bastığınızda, geri bildiriminiz Microsoft ürün ve hizmetlerini geliştirmek için kullanılır. BT yöneticiniz bu verileri toplayabilecek. Gizlilik Bildirimi.

Geri bildiriminiz için teşekkürler!

×