Bloklayan lock'ları gör (data_lock_waits)
MySQLOturumKomut
SELECT r.trx_id AS bekleyen_trx, r.trx_mysql_thread_id AS bekleyen_thread, LEFT(r.trx_query,80) AS bekleyen_sorgu, b.trx_id AS bloklayan_trx, b.trx_mysql_thread_id AS bloklayan_thread, LEFT(b.trx_query,80) AS bloklayan_sorgu FROM performance_schema.data_lock_waits w JOIN information_schema.innodb_trx r ON r.trx_id = w.requesting_engine_transaction_id JOIN information_schema.innodb_trx b ON b.trx_id = w.blocking_engine_transaction_id;Ne yapar?
Hangi transaction'ın hangi transaction tarafından bloklandığını, ilgili sorgu ve thread ID'leriyle gösterir.
Ne zaman kullanılır?
Lock beklemeleri ve deadlock kaynaklı yavaşlıkları teşhis etmek için.
Dikkat
performance_schema.data_lock_waits MySQL 8.0+ ile gelir; eski sürümde information_schema.innodb_lock_waits kullanılır. Bloklayan thread'i durdurmak için KILL bloklayan_thread; kullanılabilir.