คุณควรพิจารณาเพิ่มค่าการหมดเวลาการรอการล็อกสำหรับ InnoDB โดยการตั้งค่าinnodb_lock_wait_timeoutค่าเริ่มต้นคือ 50 วินาที
mysql> show variables like 'innodb_lock_wait_timeout';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| innodb_lock_wait_timeout | 50 |
+--------------------------+-------+
1 row in set (0.01 sec)
คุณสามารถกำหนดเป็นค่าที่สูงขึ้นได้/etc/my.cnf
อย่างถาวรด้วยบรรทัดนี้
[mysqld]
innodb_lock_wait_timeout=120
และเริ่ม mysql ใหม่ หากคุณไม่สามารถเริ่ม mysql ใหม่ได้ในตอนนี้ให้รันสิ่งนี้:
SET GLOBAL innodb_lock_wait_timeout = 120;
นอกจากนี้คุณยังสามารถตั้งค่าสำหรับช่วงเวลาของเซสชั่นของคุณ
SET innodb_lock_wait_timeout = 120;
ตามด้วยคำค้นหาของคุณ