Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Menyelesaikan \'Tamat Masa Tunggu Kunci Melebihi\' untuk Jadual MySQL Tersekat?

Bagaimana untuk Menyelesaikan \'Tamat Masa Tunggu Kunci Melebihi\' untuk Jadual MySQL Tersekat?

DDD
DDDasal
2024-11-25 03:04:11173semak imbas

How to Resolve

Menyelesaikan "Lock Wait Timeout Melebihi" untuk Jadual MySQL Tersekat

Isu terbaharu timbul apabila melaksanakan kemas kini SQL tanpa klausa WHERE terhasil dalam kunci meja yang dipanjangkan. Ini mengakibatkan ralat "Tamat masa menunggu kunci melebihi; cuba mulakan semula transaksi" semasa cuba menjatuhkan indeks yang terjejas.

Untuk menangani situasi ini, disyorkan untuk mengenal pasti dan menamatkan sebarang transaksi yang tersekat. Ini boleh dicapai dengan memeriksa benang yang sedang berjalan menggunakan arahan SHOW PROCESSLIST dalam antara muka baris arahan MySQL.

Mencari dan Membunuh Benang Terperangkap

  1. Sambung ke Pangkalan data MySQL menggunakan antara muka baris arahan.
  2. Jalankan yang berikut arahan:

    SHOW PROCESSLIST;
  3. Ini akan memaparkan senarai urutan yang sedang berjalan dengan ID dan masa pelaksanaannya.
  4. Kenal pasti urutan yang telah dilaksanakan untuk tempoh masa yang berlebihan.
  5. Untuk menamatkan benang yang tersekat, laksanakan arahan KILL diikuti dengan IDnya, seperti yang ditunjukkan di bawah:

    KILL <thread ID>;

Contoh

Contohnya, untuk menamatkan urutan dengan ID 115, gunakan arahan berikut:

KILL 115;

Setelah benang tersekat telah ditamatkan, jadual harus dibuka kunci dan operasi penurunan indeks boleh diteruskan biasalah.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan \'Tamat Masa Tunggu Kunci Melebihi\' untuk Jadual MySQL Tersekat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn