Tüm Ürünler
Search
Belge Merkezi

Database Autonomy Service:Kilitlenme analizi

Son Güncelleme:Oct 06, 2026

DAS, veritabanlarınız için iki kilitlenme analizi modu sunar: En son kilitlenme günlüğünü inceleyen Son Kilitlenme Analizi ve kilitlenme eğilimlerini izlemek amacıyla hata günlüklerini saatlik olarak ayrıştıran Tam Kilitlenme Analizi.

Not

Şekillerdeki veriler (iş parçacığı kimlikleri ve SQL deyimleri dahil) yalnızca gösterim amaçlıdır. İşlemleri gerçekleştirirken kendi verilerinizi ve parametrelerinizi kullanın.

Ön koşullar

  • Hedef örnek aşağıdaki motorlardan birini kullanmalıdır:

    • Son kilitlenme analizi:

      • RDS MySQL

      • Kendi kendine yönetilen MySQL

      • PolarDB for MySQL

      • PolarDB-X 2,0

    • Tam kilitlenme analizi:

      • RDS MySQL

      • PolarDB for MySQL

  • Hedef örneğin DAS'a bağlı olması ve bağlantı durumunun Normal Access olması gerekir. Daha fazla bilgi için bkz. Veritabanı örneğini DAS'a bağlama.

  • Alibaba Cloud Managed Services (eski adıyla DAS Economy Edition) etkinleştirilmiş olmalıdır.

    Önemli

Son kilitlenme analizi

  • Parametre ayarları: Örnekte innodb_deadlock_detect parametresi etkinleştirilmelidir.

    Not

    Bu parametre varsayılan olarak etkindir. Doğrulamak için SHOW VARIABLES LIKE 'innodb_deadlock_detect' komutunu çalıştırın. Bazı örnek türlerinde bu parametre değiştirilemez.

  • Veri analizi: SHOW ENGINE INNODB STATUS komutu tarafından döndürülen en son kilitlenme günlüğünü analiz eder.

Önemli

Birden çok kilitlenme meydana gelmişse, analiz başına yalnızca en son kilitlenme yakalanır ve kaydedilir.

Yordam

  1. DAS konsoluna giriş yapın.

  2. Sol gezinme bölmesinde Intelligent O&M Center > Instance Monitoring seçeneğine tıklayın.

  3. Hedef örneği bulun ve örnek ayrıntıları sayfasını açmak için örnek kimliğine tıklayın.

  4. Sol gezinme bölmesinde Lock Analysis seçeneğine tıklayın. Lock Analysis sayfasında Recent Deadlock Analysis sekmesini seçin.

  5. Son kilitlenme analizini başlatmak için Create Analysis seçeneğine tıklayın.

    Analiz tamamlandıktan sonra Recent Deadlock Analysis sekmesindeki sonuçlar tablosunda oluşturma zamanı, gerçekleşme zamanı ve kilitlenme bulunup bulunmadığı bilgileri gösterilir. Kilitlenmeyle ilgili ayrıntılı bilgileri görmek için View Details seçeneğine tıklayın.

Ayrıntıları görüntüleme

  1. Belirtilen süre içinde tetiklenen analiz görevlerinin sonuçlarını görüntülemek için bir zaman aralığı seçin.

  2. Son kilitlenme analizi analiz görevleri listesinde Details sütunundaki View Details seçeneğine tıklayın.

  3. Kilitlenme ayrıntılarının üç sekmede gösterildiği bir panel açılır:

    • View: İşlem düğümleri ve kayıt kilitlerini içeren kilitlenme ilişkisinin görsel grafiğini gösterir. lock granted ve waiting etiketli oklar, kilit sahipliği ve bekleme ilişkilerini göstererek bir kilitlenme döngüsü oluşturur. Geri alınan işlemler "Rolled back" olarak işaretlenir. Oturum Kimliği, iş parçacığı kimliği, istek türü, işlem kimliği, ilgili tablo, bekleyen kilit bilgileri ve bekleyen kilitteki dizin adı gibi ayrıntıları genişletmek için bir işlem düğümüne tıklayın.

    • List: Geri alınan işlemlerin işaretlendiği, kilitlenen iki işlemin yan yana karşılaştırmasını gösterir. Tablo satırları şunları içerir: Oturum Kimliği, iş parçacığı kimliği, istek türü, işlem kimliği, ilgili tablo, bekleyen kilit (dizin adı ve kilit türü; örneğin, X locks rec but not gap waiting), sahip olunan kilit (dizin adı ve kilit türü) ve işlem SQL'i. SQL Explorer and Audit bölümünde ilgili işlem ayrıntılarını aramak için alt kısımdaki iş parçacığı kimliğini veya işlem kimliğini kullanabilirsiniz.

    • Log: SHOW ENGINE INNODB STATUS çıktısının LATEST DETECTED DEADLOCK bölümündeki ham kilitlenme günlüğünü gösterir. Bu günlük; kilitlenme zamanını, ilgili işlemlerin SQL deyimlerini, sahip olunan kilit bilgilerini (HOLDS THE LOCK) ve bekleyen kilit bilgilerini (WAITING FOR THIS LOCK TO BE GRANTED) içerir.

SQL Explorer and Audit ile analiz etme

  1. Hedef örneğin sol gezinme bölmesinde SQL Explorer and Audit seçeneğine tıklayın. Audit sayfasında Enable Advanced Query seçeneğine tıklayın.

  2. Kilitlenmenin gerçekleştiği zamanı içeren bir zaman aralığı seçin ve bu işlem tarafından yürütülen SQL deyimlerini sorgulamak için son kilitlenme analizindeki iş parçacığı kimliğini girin.

    1. Örnekteki İşlem 1 için sorgu sonuçları, iş parçacığının üç SQL deyimi yürüttüğünü gösterir: update students set name=UUID() where id = 2 (yürütme süresi: 2.938,377 ms, kilit bekleme süresi: 1 ms), update students set name=UUID() where id = 3 (yürütme süresi: 0,002 ms) ve begin. İlk update deyiminin olağan dışı uzun yürütme süresi bir kilit beklentisini gösterir.

    2. İşlem 2 (geri alındı) için: Audit sayfasında Time range değerini ayarlayın, Thread ID değerini 195662 olarak ayarlayın ve ardından Query seçeneğine tıklayın. Günlük listesi İşlem 2 için SQL yürütme kaydını gösterir: update students set name=UUID() where id = 3 deyimi 1213 hata koduyla (kilitlenme) başarısız oldu ve 1,40 ms sürdü, kilit bekleme süresi 1,152 ms idi. update students set name=UUID() where id = 2 deyimi başarılı oldu ve 0,20 ms sürdü. begin deyimi başarılı oldu ve 0,18 ms sürdü.

Tam kilitlenme analizi

  • innodb_deadlock_detect ve innodb_print_all_deadlocks parametrelerini etkinleştirmeniz gerekir. Bir RDS MySQL örneği için log_error_verbosity parametresini 3 olarak ayarlamanız gerekir.

    Not

    innodb_deadlock_detect parametresi varsayılan olarak etkindir. Doğrulamak için SHOW VARIABLES LIKE 'innodb_deadlock_detect' komutunu çalıştırabilirsiniz. Bazı örnek türlerinde bu parametre değiştirilemez.

  • Veri kaynağı: DAS, her saat örneğin hata günlüğünden kilitlenme bilgilerini ayrıştırarak kilitlenme sayısı eğilimlerini oluşturur ve her bir kilitlenmenin ayrıntılarını derler.

  • Bekleme süresi: Alibaba Cloud Managed Services etkinleştirilmişse ve DAS gerekli parametrelerin etkinleştirilmediğini tespit ederse, DAS 12 saatlik bir bekleme süresine girer ve analiz görevlerini çalıştırmaz. Bekleme süresi sırasında gerekli parametreleri etkinleştirirseniz, DAS bekleme süresinin sona ermesini bekler ve ardından analizi yeniden planlar. Örnek:

    • Saat 11:12'deki bir analiz görevi, gerekli bir parametrenin etkin olmadığını tespit eder ve 12 saatlik bir bekleme süresi başlatır. Saat 23:12'den sonra tam kilitlenme analizi görevi yeniden planlar. Parametre hala etkin değilse başka bir 12 saatlik bekleme süresi başlar. Parametreyi saat 23:12'den önce etkinleştirirseniz bekleme süresi saat 23:12'de sona erer. Bundan sonra, gerekli parametre ve Alibaba Cloud Managed Services örnek için etkin kaldığı sürece analiz saatlik olarak çalışır.

Önemli

"TOO DEEP OR LONG SEARCH IN THE LOCK TABLE WAITS-FOR GRAPH, WE WILL ROLL BACK FOLLOWING TRANSACTION" mesajını içeren kilitlenmelerin analizi desteklenmez.

Yordam

  1. DAS konsoluna giriş yapın.

  2. Sol gezinme bölmesinde Intelligent O&M Center > Instance Monitoring seçeneğine tıklayın.

  3. Hedef örneği bulun ve örnek ayrıntıları sayfasını açmak için örnek kimliğine tıklayın.

  4. Sol gezinme bölmesinde Lock Analysis seçeneğine tıklayın. Lock Analysis sayfasında Full Deadlock Analysis sekmesini seçin.

  5. Her saat, tam kilitlenme analizi örneğin hata günlüklerini otomatik olarak analiz eder, kilitlenmeleri sayar ve verileri sayfanın üst kısmındaki Deadlock Trend grafiğinde çizer. İlgili dönemdeki kilitlenme eğilimini görüntülemek için bir zaman aralığı seçin.

    Sayfanın üst kısmında Last 1 Day, Last 3 Days ve Last 7 Days için hızlı seçim düğmeleri ve özel bir tarih aralığı seçici bulunur. Eğilim grafiğini yenilemek için View düğmesine tıklayın. Grafiğin altında, her biri için Deadlock Time bilgisini gösteren kilitlenme olaylarının bir listesi yer alır. Daha fazla bilgi görmek için belirli bir olayın View Details seçeneğine tıklayın.

Ayrıntıları görüntüleme

  1. Tam kilitlenme analizinin kilitlenme listesinde Details sütunundaki View Details seçeneğine tıklayın.

  2. Görünüm, Liste ve Günlük olmak üzere üç sekmede kilitlenme ayrıntılarını içeren bir panel açılır. Günlük sekmesi kilitlenmeyle ilgili hata günlük içeriğini içerir. Görünüm ve Liste sekmeleri son kilitlenme analizindeki sekmelerle aynıdır. Daha fazla bilgi için bkz. Son kilitlenme analizi - Ayrıntıları görüntüleme.

SQL Explorer and Audit ile analiz etme

Yordam, son kilitlenme analiziyle aynıdır. Daha fazla bilgi için bkz. Son kilitlenme analizi - SQL Explorer and Audit ile analiz etme.

İlgili belgeler