全局,动态,默认值-1表示自动调整大小,公式:8 + (max_connections / 100),最小值0最大值16384。
MySQL [(none)]> show variables like 'thread_cach%';+-------------------+-------+| Variable_name | Value |+-------------------+-------+| thread_cache_size | 64 |+-------------------+-------+
在经常创建新的连接的情况下,提高该值可提高mysql性能,因为减少了连接的分配,但使用了java的连接池等,性能提升没那么显著。
如果每秒有上百的连接,需要将该值设置足够高。
通过检查Connections和Threads_created状态变量之间的差异,您可以看到线程缓存的效率:
#尝试连接次数,无论是否成功连接MySQL [(none)]> show global status like 'connections';+---------------+-----------+| Variable_name | Value |+---------------+-----------+| Connections | 177312707 |+---------------+-----------+MySQL [(none)]> show global status like 'thread%';+-------------------+--------+| Variable_name | Value |+-------------------+--------+| Threads_cached | 49 | #线程缓存中的空闲线程数| Threads_connected | 416 | #当前打开的连接数| Threads_created | 208872 | #创建用于处理连接的线程数,如果很大,需要添加thread_cache_size大小| Threads_running | 5 | #当前未休眠的连接+-------------------+--------+连接未命中率计算方式:Threads_created/ConnectionsMySQL [(none)]> select 208872/177312707;+------------------+| 208872/177312707 |+------------------+| 0.0012 |+------------------+
文章转载自我是阿魏,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




