1. 程式人生 > >MySQL報錯InnoDB: A long semaphore wait【轉】

MySQL報錯InnoDB: A long semaphore wait【轉】

mysql登入後無法執行命令如show processlist

檢視MySQL錯誤日誌

參考以下方法,執行

 1、系統層面

[[email protected] ~]# cat /proc/sys/kernel/sem 
250    32000    32    128
[[email protected] ~]# echo "kernel.sem=250 32000 100 128" >> /etc/sysctl.conf
[[email protected] ~]# sysctl -p 

2、MySQL引數修改

set global innodb_adaptive_hash_index=off;

檢視修改結果
SHOW GLOBAL VARIABLES LIKE 
'innodb_ada%'; 可以看到innodb_adaptive_hash_index已經關閉,完成。

在my.cnf中新增
innodb_adaptive_hash_index=off

隨後服務自動關閉,網上資料說是因為雜湊自適應索引的問題,mysql的雜湊自適應索引是預設開啟的,這樣建立索引後,讀取和寫入的效率能提高2倍以上,但是有可能會出現死鎖的問題,網上建議關閉

 

轉自

https://blog.csdn.net/wulantian/article/details/37560849

mysql錯誤Warning: a long semaphore wait - captain618的部落格 - CSDN部落格 https://blog.csdn.net/captain618/article/details/52453370

mysql adaptive hash index - 敖爾其楞的專欄 - CSDN部落格 https://blog.csdn.net/aoerqileng/article/details/61615887