SQL Server Profiler ile kilitlenmeleri çözümlemek

Kullanım SQL Server Profilerbir Kilitlenme nedenini belirlemek için. İki veya daha fazla iş parçacıkları veya işlemler, bazı kaynakları içinde SQL Server kümesi arasında döngüsel bağımlılık olduğunda kilitlenme oluşur. Kullanarak SQL Server Profiler, sen-ebilmek yaratmak kaydeden replays ve kilitlenme olayları analiz görüntüler izleme.

Kilitlenme olayları izleme eklemek Deadlock graph olay sınıfı bir izleme. Bu olay sınıfı doldurur TextData veri sütununda izleme ile xml veri işlem ve kilitlenmeyle ilgili nesneler hakkında. SQL Server Profilerdaha sonra SQL Server Management Studio'da görüntüleyebileceğiniz bir kilitlenme xml (.xdl) dosya xml belgesine ayıklayabilirsiniz. Yapılandırabileceğiniz SQL Server Profilerayıklamak için Deadlock graph olayların tümünü içeren tek bir dosyaya Deadlock graph olaylar, ya da dosyaları ayırmak için. Bu ayıklama aşağıdaki yollardan biriyle gerçekleştirilebilir:

  • İzleme Yapılandırması, zaman, kullanarak Olayları ayıklama ayarlar sekmesi. Not Seçtiğiniz kadar bu sekmesi görüntülenmiyor Deadlock graph olay Olayları seçimi sekmesi.

  • Kullanarak SQL Server olayları Ayıkla Tarih seçeneği dosyasını menü.

  • Tek tek olaylar da çıkarılan ve belirli bir olay sağ tıklatarak ve seçme kurtarmak Olay veri Ayıkla.

Kilitlenme grafikler

SQL Server Profilerve SQL Server Management Studiobir kilitlenme bekleyin kullanın-kilitlenme açıklamak grafik için. Kilitlenme beklemek-için işlem düğümlerini, kaynak düğüm ve kenarları süreçleri ve kaynakları arasındaki ilişkileri gösteren grafik içerir. Bekleme bileşenleri-için grafikler aşağıdaki tabloda tanımlanmıştır:

  • İşlem düğüm
    Bir görevi yerine getiren bir iş parçacığı; Örneğin, ekleme, güncelleştirme veya silme.

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

  • Kenar
    Bir kaynak ve bir işlem arasındaki ilişki. A requestkenar oluşur bir süreç için bir kaynak bekler. Bir ownerkenar oluşur bir işlem için bir kaynak bekler. Kilit modu kenar açıklamada bulunur. Örneğin, mod: x. Kilit modları atamak mümkün değerler hakkında daha fazla bilgi için bkz: Detecting and Ending Deadlocks.

Kilitlenme işlemi düğüm

Bekleme içinde-grafik için işlem düğüm işlemi hakkında bilgi içerir. Aşağıdaki tabloda, bir işlem bileşenleri açıklanmaktadır.

Bileşen

Tanım

Sunucu işlem KIMLIĞI

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

Sunucu toplu iş KIMLIĞI

Sunucu toplu tanımlayıcısı (SBID).

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

Yürütme içeriği tanımlayıcı (ECID). Belirli bir SPID ile ilişkili belirli bir iş parçacığı yürütme içerik Kımlığı.

ECID = {0,1,2,3, ...n}, burada 0 temsil her zaman ana veya üst iplik, ve {1,2,3, ...n} subthreads temsil.

Kilitlenme önceliği

Kilitlenme önceliği işlemi. Olası değerler hakkında daha fazla bilgi için bkz: set DEADLOCK_PRIORITY (Transact-sql).

Kullanılan günlük

İşlem tarafından kullanılan günlük alanı miktarı.

Sahip kimliği

Hareketleri kullanarak ve şu anda bir kilit bekleyen işlemler için hareket kodu.

Işlem tanımlayıcısı

İşaretçi hareket durumunu açıklayan işlem tanımlayıcısı.

Giriş arabelleği

Giriş arabelleği sürecin, olay ve yürütülmekte olan deyimi türü tanımlar. Olası değerler şunlardır:

  • Dil

  • RPC

  • Hiçbiri

Deyimi

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

  • NOP

  • SEÇİN

  • GÜNCELLEŞTİRME

  • EKLE

  • DELETE

  • Bilinmiyor

Kilitlenme kaynak düğümü

Bir kilitlenme, her servis için başka bir işlem tarafından düzenlenen kaynak için iki işlem vardır. Kilitlenme grafik olarak, kaynakları, kaynak düğüm olarak görüntülenir. Her kaynak listelenen türlerinden biri olacak Lock Granularity and Hierarchies.

Ayrıca bkz.

Görevler

Kilitlenme grafikler (SQL Server Profiler) Kaydet

Diğer Kaynaklar

Deadlocking

Detecting and Ending Deadlocks