MySQL报错InnoDB: A long semaphore wait【转】

时间:2023-03-09 19:45:01
MySQL报错InnoDB: A long semaphore wait【转】

mysql登录后无法执行命令如show processlist

查看MySQL错误日志

MySQL报错InnoDB: A long semaphore wait【转】

参考以下方法,执行

1、系统层面

[root@pisphkdcbsql01 ~]# cat /proc/sys/kernel/sem 

[root@pisphkdcbsql01 ~]# echo "kernel.sem=250 32000 100 128" >> /etc/sysctl.conf
[root@pisphkdcbsql01 ~]# 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.****.net/wulantian/article/details/37560849

mysql错误Warning: a long semaphore wait - captain618的博客 - ****博客 https://blog.****.net/captain618/article/details/52453370

mysql adaptive hash index - 敖尔其楞的专栏 - ****博客 https://blog.****.net/aoerqileng/article/details/61615887