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:
|
Deyimi |
Deyimi türü. Olası değerler şunlardır:
|
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