Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 18195|Yanıt: 0

[Kaynak] Kilit bekleme süresi aşıldı; İşlemi yeniden başlatmayı deneyin

[Bağlantıyı kopyala]
Yayınlandı 13.03.2019 13:08:36 | | | |
Kilit bekleme süresi aşıldı; İşlemi yeniden başlatmaya çalışmak, kilit bekleme süresidir. Bu, mevcut işlemin diğer işlemlerin kilit kaynağını serbest bırakmasını beklemesi nedeniyle oluşur.



Çözüm:

Bir mysql sorgusunda aşağıdaki komutu yürütün

Aslında, nedenleri öğrenmek için aşağıdaki üç tabloyu kullanabiliriz:

innodb_trx ## Şu anda çalışan tüm işlemler
innodb_locks ## Şu anda gerçekleşen kilit
innodb_lock_waits ## Kilidin bekleyen yazışmaları

Sonuçlar şu şekildedir:



Farklı parametrelere sahip birkaç iş parçacığı ile mysql_thread_id iş parçacığı numarasını öğrenin

Sorunu çözmek için kill + thread numarasını çalıştırın.

desc information_schema.innodb_locks;

Saha
Tip
Null
AnahtarTemerrütAçıklama
lock_id
varchar(81)
HAYIR
Kilit Kimliği
lock_trx_id
varchar(18)
HAYIR
Kilidin sahibi işlem kimliği
lock_mode
varchar(32)
HAYIR
Kilitleme modu
lock_type
varchar(32)
HAYIR
Kilit tipi
lock_table
varchar(1024)
HAYIR
Kilitli masa
lock_index
varchar(1024)
EVET
NULLKilitli indeksler
lock_space
bigint(21) imzasız
EVET
NULLKilitli tablo alanı numarası
lock_page
bigint(21) imzasız
EVET
NULLKilitli sayfa numarası
lock_rec
bigint(21) imzasız
EVET
NULLKilitli rekor sayı
lock_data
varchar(8192)
EVET
NULLKilitli veri


desc information_schema.innodb_lock_waits

Saha
Tip
Null
AnahtarTemerrütAçıklama
requesting_trx_id
varchar(18)
HAYIR
İstek kilidinin işlem kimliği
requested_lock_id
varchar(81)
HAYIR
İstek kilidinin kilit kimliği
blocking_trx_id
varchar(18)
HAYIR
Şu anda kilidin sahibi olan işlem kimliği
blocking_lock_id
varchar(81)
HAYIR
Şu anda kilidi sahip olan kilidin kilit kimliği


desc information_schema.innodb_trx ;

Saha
Tip
Null
AnahtarTemerrütEkstraAçıklama
trx_id
varchar(18)
HAYIR
İşlem Kimliği
trx_state
varchar(13)
HAYIR
İşlem durumu:
trx_started
Tarih saati
HAYIR
0000-00-00 00:00:00işlem başlama zamanı;
trx_requested_lock_id
varchar(81)
EVET
NULLinnodb_locks.lock_id
trx_wait_started
Tarih saati
EVET
NULLİşlemin beklemeye başladığı zaman
trx_weight
bigint(21) imzasız
HAYIR
0#
trx_mysql_thread_id
bigint(21) imzasız
HAYIR
0İşlem iş parçacığı kimliği
trx_query
varchar(1024)
EVET
NULLÖzel SQL ifadeleri
trx_operation_state
varchar(64)
EVET
NULLİşlemin mevcut operasyonel durumu
trx_tables_in_use
bigint(21) imzasız
HAYIR
0Bir işlemde kaç tablo kullanılır
trx_tables_locked
bigint(21) imzasız
HAYIR
0Bir işlemde kaç kilidi var
trx_lock_structs
bigint(21) imzasız
HAYIR
0#
trx_lock_memory_bytes
bigint(21) imzasız
HAYIR
0İşlem kilitli bellek boyutu (B)
trx_rows_locked
bigint(21) imzasız
HAYIR
0İşlem tarafından kilitlenen satır sayısı
trx_rows_modified
bigint(21) imzasız
HAYIR
0İşlemin değiştirildiği hat sayısı
trx_concurrency_tickets
bigint(21) imzasız
HAYIR
0İşlem ve fatura sayısı
trx_isolation_level
varchar(16)
HAYIR
İşlem izolasyon seviyesi
trx_unique_checks
int(1)
HAYIR
0Benzersiz bir kontrol olup olmadığını
trx_foreign_key_checks
int(1)
HAYIR
0Yabancı anahtar kontrolü olup olmadığı
trx_last_foreign_key_error
varchar(256)
EVET
NULLSonunda yabancı anahtar hatası
trx_adaptive_hash_latched
int(1)
HAYIR
0#
trx_adaptive_hash_timeout
bigint(21) imzasız
HAYIR
0#




Önceki:MySQL verileri silme not in çok yavaş optimizasyon yapıyor
Önümüzdeki:javaEE Ekim 2018 video materyali
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com