MySQL提示Writing to net的解决方法

9 篇文章 0 订阅
7 篇文章 0 订阅

最近发现某一个数据库cpu/内存占用比较高


首先查看数据库慢日志,设定慢日志5秒,基本上没有产生日,没有超过5秒的语句。

show processlist;

后发现几条select有几个表查询需要1-2秒;


explain select * from xxx

发现没有走索引,全表扫描,以前数据量少那会很快就出来了,目前查询总数据都在2万以内,现在数据量大了,其它表都1000w级了,以前只优化了大表的索引,所以问题就突出了。

索引建完后CPU明显示下降,据我了解,msyql cpu/内存占用高,80%的情况未使用索引有关。


再次:

show processlist

发现多条语句状态为Writing to net

通过分析基本都是select 语句,都是查询数据太数据库返回网络回写不赢


查看

show global variables like “max_allowed_packet”

只有1M


通过增加缓存

set global max_allowed_packet =134217728

问题得到解决!原因是多条select 返回数据越过缓存超过默认设置。


本文来源:https://blog.csdn.net/enweitech/article/details/53672637

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值