Aracılığıyla paylaş


SQL Server Profiler ile kilitlenmeleri çözümleniyor

Kullanımı SQL Server Profiler çıkmaz nedenini belirlemek için . Iki veya daha çok iş parçacığı veya bazı kaynakları SQL Server kümesi için işlemleri arasında Çevrimsel bağımlılık olduğunda çıkmaz oluşur.Bu alternatif SQL Server Profiler, kayıtları replays ve çözümleme için çıkmaz olayları görüntüleyen bir izleme oluşturabilirsiniz.

çıkmaz olayları izlemek için , ekleme çıkmaz grafik olay sınıfı bir izleme.This event class populates the TextData data column in the trace with XML data about the process and objects that are involved in the deadlock.SQL Server Profiler can extract the XML document to a deadlock XML (.xdl) file which you can view later in SQL Server Management Studio.Yapılandırabilirsiniz. SQL Server Profiler ayıklamak için çıkmaz grafik dosyaya tek içeren tüm olaylarıçıkmaz grafik olayları veya dosyaları ayırmak için.Bu ayıklama aşağıdaki yollardan biriyle gerçekleştirilebilir:

  • Izleme yapılandırması sırasında saat kullanarak Olayları ayıklama ayarları tab.Seçtiğiniz kadar bu sekmesi görüntülenmiyor Not çıkmaz grafik olayıOlayları seçimi tab.

  • Kullanarak SQL Server olayları ayıklayın. seçeneğiDOSYA menüsü.

  • Belirli olayları de ayıklanabilir ve olması belirli bir olay'ı sağ tıklatın ve seçme Olay veri Ayıkla.

çıkmaz grafikler

SQL Server Profiler ve SQL Server Management Studio çıkmaz bekleme kullan - çıkmaz açıklamak kullanılan grafik. çıkmaz bekleme - için işlem düğümlerini, kaynak düğümlerin ve kenarları işlemleri ve kaynakları arasındaki ilişkileri gösteren grafik içerir.Bileşenler, bekleme - grafikler için aşağıdaki tabloda tanımlanmıştır:

  • Işlem düğüm
    Bir görev; örneğin, INSERT, UPDATE veya DELETE gerçekleştiren BIR iş parçacığı.

  • Kaynak düğümü
    Bir veritabanı nesnesini; örneğin, bir tablo, dizin veya satır.

  • Kenar Çizgili
    Bir işlemin arasındaki ilişkiyi ve bir kaynak.C request bir işlem bekler kenar oluşuyor bir kaynak. Bir owner bir işlem için bir kaynağın bekleyeceği kenar oluşur. Kilit modu kenar açıklamasında yer alır.Örneğin, Mod: X.Kilit modu belirlemek olası değerleri hakkında daha fazla bilgi için bkz: Kilit modu.

çıkmaz işlem düğüm

Bekleme - grafik için işlem düğüm işlemi hakkında bilgi içerir.Aşağıdaki tablo, bir işlemin bileşenleri açıklar.

Bileşen

Tanım

Sunucu işlem kimliği

Sunucu işlemi tanımlayıcısı (SPID), bir sunucu, kilit sahibi işlem tanımlayıcısı atanır.

Sunucu toplu iş iş iş kimliği

Sunucu toplu iş iş tanıtıcısı (SBID).

Yürütme içeriği kimliği

Yürütme bağlam tanıtıcısı (ECID).Belirli bir SPID ile ilişkili belirli iş parçacığı parçacığının yürütülmesine içerik KIMLIĞI.

ecid {0,1,2,3, = ... n}, where 0 always represents the main or parent thread, and {1,2,3, ... n} represent the subthreads.

çıkmaz önceliği

Işlem için çıkmaz önceliği.Olası değerler hakkında daha fazla bilgi için bkz: küme DEADLOCK_PRIORITY (Transact-SQL).

Kullanılan günlük

Işlem tarafından kullanılan alanı miktarı.

Sahip kimliği

Hareketleri kullanarak ve şu anda üzerinde kilit bekleyen işlemler için işlem KIMLIĞI.

Işlem tanımlayıcısı

Işaretçi hareket durumunu açıklayan bir hareketin tanımlayıcısı.

Giriş arabelleği

Arabellek geçerli işlemin giriş, yürütülmekte olan deyim olay türünü tanımlar.Olası değerler şunlardır:

  • Dil

  • RPC

  • None

deyim

deyim türü.Olası değerler şunlardır:

  • nop

  • SEÇİN

  • GÜNCELLEŞTİRME

  • EKLEME

  • SİLME

  • Bilinmeyen

çıkmaz kaynak düğümü

Bir kilitlenmeyle her bekleyen başka bir işlem tarafından tutulan bir kaynak için iki işlemler var.çıkmaz grafikte, kaynaklar, kaynak düğümleri olarak görüntülenir.Her kaynağın listelenen türlerinden biri olacaktır Kilit taneciklik ve Hierarchies.