jika terdapat error dengan error 1205 (hy000) lock wait timeout exceeded biasanya terjadi aksi locking yang lama / aksi saling menunggu dari sebuah transaksi / query pada mysql solusi jangka pendek adalah menambah limit dari innodb_lock_wait_timeout .untuk rentang nilai tersebut kita dapat setting nilai dari 1 to 1073741824 dengan nilai default 50 (detik).
kita bisa dengan mudah menambahkan dengan set global seperti ini
masuk ke mode mysql dulu mysql -u root -p
SET GLOBAL innodb_lock_wait_timeout = 120;
atau perintah selt selama sesi anda aktif
SET innodb_lock_wait_timeout = 120;
, tetapi biasa akan kembali ke nilai default ketika database berhenti atau restart
mari kita belajar menambahkan limit pada innodb_lock_wait_timeout secara permanen,
masuk ke mode mysql
mysql -u root -p
kemudian cek limit default
show variables like ‘innodb_lock_wait_timeout’;
rubah dengan menambahkan pada file mysqld.cnf pada debian file tersebut terletak di /etc/mysql/mysql.conf.d/mysqld.cnf
pada file mysql.cnf pastikan pada file tersebut diawal [mysqld] bukan [mysql] karena ada beberapa file dengan eksensi .cnf
coba cek dengan masuk ke mysql -u root -p
kemudian jika ada tulisan
unknown variable ‘‘innodb_lock_wait_timeout’
berati anda salah file my.cnf. jika tidak ada apa -apa atau kosong berarti benar dan
restart server anda , den cek kembali dengan perintah
mysql -u root -p
kemudian
show variables like ‘innodb_lock_wait_timeout’;
jika hasilnya sudah berubah maka anda telah berhasil merubah nilai innodb_lock_wait_timeout
semoga berguna 🙂
referensi :
- https://stackoverflow.com/questions/35638126/mysql-unknown-variable-in-my-cnf
- https://www.ebhor.com/setting-innodb_lock_wait_timeout/
- https://severalnines.com/blog/how-fix-lock-wait-timeout-exceeded-error-mysql/
- http://www.weicot.com/lock-wait-timeout-exceeded-try-restarting-transaction/
- https://severalnines.com/blog/how-fix-lock-wait-timeout-exceeded-error-mysql/
- https://stackoverflow.com/questions/47789423/mariadb-permanent-variable-setting
- https://www.ebhor.com/setting-innodb_lock_wait_timeout/
tinggalkan pesan