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
Jalankan yang berikut arahan:
SHOW PROCESSLIST;
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!