位置: 编程技术 - 正文

MySQL thread_stack连接线程的优化

编辑:rootadmin

推荐整理分享MySQL thread_stack连接线程的优化,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

MySQL连接不仅能通过网络方式,还可以通过命名管道的方式,不论是哪种方式连接MySQL,在MySQL中都是通过线程的方式管理所有客户端请求的。每一个客户端连接都会有一个与之对应的连接线程。在MySQL中实现了一个Thread Cache池,将空闲的连接线程存放其中,而不是完成请求后就销毁。这样,当有新的连接请求时,MySQL首先会检查Thread Cache中是否存在空闲连接线程,如果存在则取出来直接使用,如果没有空闲连接线程,才创建新的连接线程。具体参数:Thread_cache_size:Thread Cache池中应该存放的连接线程数。Thread_stack:每个连接线程被创建时,MySQL给它分配的内存大小。当MySQL创建一个新的连接线程时,需要给它分配一定大小的内存堆栈空间,以便存放客户端的请求的Query及自身的各种状态和处理信息。查看连接线程相关的系统变量的设置值: show variables like 'thread%';

mysql> show variables like 'thread%';+-------------------+--------+| Variable_name | Value |+-------------------+--------+| thread_cache_size | || thread_stack | |+-------------------+--------+2 rows in set (0. sec)

如图,系统设置了Thread Cache池最多将缓存个连接线程,每个连接线程创建之初,系统分配KB的内存堆栈给它。查看系统被连接的次数及当前系统中连接线程的状态值

mysql> show status like 'connections';+---------------+-------+| Variable_name | Value |+---------------+-------+| Connections | |+---------------+-------+1 row in set (0. sec)

mysql> show status like '%thread%';+------------------------+-------+| Variable_name | Value |+------------------------+-------+| Delayed_insert_threads | 0 || Slow_launch_threads | 0 || Threads_cached | 3 || Threads_connected | 4 || Threads_created | 7 || Threads_running | 1 |+------------------------+-------+6 rows in set (0. sec)

系统启动到现在共接受到客户端的连接次,共创建了7个连接线程,当前有1个连接线程处于和客户端连接的状态,而3个连接状态的线程中只有一个处于 active 状态,即只有一个正在处理客户端提交的请求,。而在Thread Cache池中共缓存了3个连接线程。Thread Cache 命中率:Thread_Cache_Hit = (Connections - Threads_created) / Connections * %;一般在系统稳定运行一段时间后,Thread Cache命中率应该保持在%左右才算正常。

实际应用:

针对G/G的机器,一般设置 K

当然如果遇到下面的错误提示就应该考虑增加这个值了。

mysql-debug: Thread stack overrun

MySQL thread_stack连接线程的优化

bug info

报错信息:java.sql.SQLException: Thread stack overrun: bytes used of a byte stack, and bytes needed. Use 'mysqld --thread_stack=#' to specify a bigger stack.

官方相应信息:

The default (KB) is large enough for normal operation. If the thread stack size is too small, it limits the complexity of the SQL statements that the server can handle, the recursion depth of stored procedures, and other memory-consuming actions

可以使用

show variables where `variable_name` = 'thread_stack';

查询当前数据库的默认线程栈的大小,一般情况下都能正常使用,但是当查询语句或者存储过程复杂时会报Thread stack overrun错误,此时只要修改默认配置就可以。

解决

windows: 修改mysql安装目录下的my-small.ini或者my.ini设置为k,或者更大,然后重启服务

[mysqld] thread_stack = klinux: 同样要修改配置文件,但是!!!,不是安装目录下的配置文件,是/etc/my.cnf,只有这个文件才能生效,然后重启服务service mysql restart

[mysqld] thread_stack = k

CentOS下RPM方式安装MySQL5.6教程 之前的项目全都在windows系统环境下部署的,这次尝试在Linux系统环境下部署,于是这次我们组织在7台主机上安装了JDK、Maven、Jboss其中一台安装了Mysql,

DROP TABLE在不同数据库中的写法整理 DROPTABLE在不同数据库中的写法整理1,MySql中DROPTABLEIFEXISTS[table_name]2,Oracle中:BEGINEXECUTEIMMEDIATE'DROPTABLE[table_name]';EXCEPTIONWHENOTHERSTHENNULL;END;3,在SqlServer中IFEX

MySql服务未知原因消失解决方法 MySql服务未知原因消失解决方法刚才突然MySQL-Front打开不了MySql,果不其然发现是MySql的服务不见了。想起可能是昨晚安装了PhpStudy的点了不要MySql的选项

标签: MySQL thread_stack连接线程的优化

本文链接地址:https://www.jiuchutong.com/biancheng/349696.html 转载请保留说明!

上一篇:MYSQL 解锁与锁表介绍(mysql锁表的sql)

下一篇:CentOS下RPM方式安装MySQL5.6教程(centosrpm安装)

  • 房地产零税率
  • 公对公打款开票
  • 水利基金在哪个科目核算
  • 长期应收款在资产负债表中填在哪里
  • 设备5年直线法计提折旧怎么做
  • 月末怎么计提税费
  • 冲红的专票要给购买方吗
  • 买入空调会计分录
  • 物业费专用发票税率
  • 出售报废固定资产属于什么收入
  • 银行的期初数据怎么进行账务处理?
  • 税控盘抵税账务处理
  • 以前年度固定资产入账错误怎么办?
  • 股权收购的好处
  • 特许权使用费如何缴纳增值税
  • 重点创业人群
  • 购入赠品计入什么科目
  • 常用的索赔费用计算方法
  • 土地增值税地价扣除
  • 工程结算属于哪个类别
  • 筹资活动流入的现金是内源融资吗
  • 低值易耗品怎么结转
  • 公司购买自用房产税如何征收
  • 营改增之前的增值税
  • iphone7如何设置输入法
  • Win10 Build 18363.1350/17763.1728累积更新补丁KB4598298正式推送
  • windows11怎么安装iis
  • php输出二进制
  • 生产企业委外加工比例出口免抵退税
  • macbookprofacetime
  • 建筑单位没有资质可以承包项目吗
  • 可以税前扣除的支出
  • 子公司增发股票母公司为什么会产生利得
  • win10商店无法加载
  • 逾期未收回包装物押金税率
  • 开具负数发票的流程
  • 关于商业承兑汇票的多选题有哪些
  • react 入门教程
  • 外经证过期没有注销罚款多少
  • 公司开的餐费专票可以抵扣吗
  • 公司扣个税查不到怎么办
  • 亏损弥补规定
  • 企业提前还贷为什么违约
  • 补开上年发票的税务处理要怎么做?
  • 代开专票时缴纳的增值税账务处理如何做?
  • mongodb bi
  • curl抓包
  • 电子承兑逾期超过30天怎么办
  • 新版电子税务局怎么增加办税人员
  • 收到加工费怎么做账务处理分录
  • 汇兑损益计入营业外收入吗
  • 对外付汇代扣代缴所得税
  • 房屋租赁违约金怎么规定
  • 资产负债表日后非调整事项应当在附注中披露
  • 旅游业开具的是什么证明
  • 进项税额准予抵扣是什么意思
  • 专利年费计入什么科目没有研发费用
  • 待处理财产损益是备抵类科目吗
  • 日常费用报销流程是什么样的?
  • 企业什么情形必须签无固定期限合同
  • 库存商品记账
  • 企业存货会计分录
  • 账户记录试算不平衡说明记账肯定有差错对吗
  • mysql详细介绍
  • windows字幕软件
  • windows8安装程序
  • centos5安装步骤
  • centos 命令行
  • windows10电脑屏保怎么取消
  • shell脚本语言入门
  • Unity3D游戏开发标准教程吴亚峰于复兴人民邮电出版社
  • 简单介绍一下自己
  • Python中time模块中的方法
  • java中关联关系
  • 安卓消息处理机制
  • 国家税务局申请电子发票怎么申请
  • 个人经营所得税怎么做账务处理
  • 研发费用加计扣除是什么意思啊
  • 电子税务局官网湖南省
  • 湖北低保查询网站官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设