记录:
MySQL利用多核处理器
https://blog.csdn.net/sinat_36246371/article/details/53425183
show variables like '%_io_threads'
打开mysql.ini文件,在最后添加这么两句:
innodb_thread_concurrency=0
innodb_read_io_threads=18
innodb_read_write_threads=16
重启MySQL服务
MySQL并行写入、查询性能调优(多核CPU)
https://blog.csdn.net/qq_32828253/article/details/78801679
https://www.cnblogs.com/wajika/p/6763181.html
如果你没有修改过MySQL的配置,缺省情况下,wait_timeout的初始值是28800。
wait_timeout 过大有弊端,其体现就是MySQL里大量的SLEEP进程无法及时释放,拖累系统性能,不过也不能把这个指设置的过小,否则你可能会遭遇到“MySQL has gone away”之类的问题。
wait_timeout=100 #即设置mysql连接睡眠时间为100秒,任何sleep连接睡眠时间若超过100秒,将会被mysql服务自然终止,要比编写shell脚本更简单。
set global wait_timeout=120;
show global variables like 'wait_timeout';
https://blog.csdn.net/Jehoshaphat/article/details/49926773
MySQL服务器所支持的最大连接数是有上限的,因为每个连接的建立都会消耗内存,
因此我们希望客户端在连接到MySQL Server处理完相应的操作后,应该断开连接并释放占用的内存。
如果你的MySQL Server有大量的闲置连接,他们不仅会白白消耗内存,而且如果连接一直在累加而不断开,最终肯定会达到MySQL Server的连接上限数,这会报'too many connections'的错误。
对于wait_timeout的值设定,应该根据系统的运行情况来判断。
在系统运行一段时间后,可以通过show processlist命令查看当前系统的连接状态,如果发现有大量的sleep状态的连接进程,则说明该参数设置的过大,可以进行适当的调整小些。
如果在配置文件my.cnf中只设置参数wait_timeout=100,则重启服务器后进入,执行:
Mysql> show variables like “%timeout%”;
会发现参数设置并未生效,仍然为28800(即默认的8个小时)。
查询资料后,要同时设置interactive_timeout和wait_timeout才会生效。
【mysqld】
wait_timeout=100
interactive_timeout=100
重启MySQL Server进入后,查看设置已经生效。
通过查询网上资料得出,mysql 服务器默认wait_timeout为28800s,合计8小时。如果8小时后链接还处于sleep状态,mysql将自动将连接断掉。wait_timeout的最大值只允许2147483 (24天左右)