mysql 提示 Writing to net_MySQL
程序员文章站
2022-05-24 20:35:52
...
最近发现某一个数据库cpu占用比较过。超过200%了。
首先查看数据库慢日志,设定慢日志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 "global max_allowed_packet" 只有1M
通过增加缓存
set global max_allowed_packet =134217728
问题得到解决!原因是多条select 返回数据越过缓存超过默认设置。
推荐阅读
-
新装MySql后登录出现root帐号提示mysql ERROR 1045 (28000): Access denied for use的解决办法
-
解决Mysql5.7.17在windows下安装启动时提示不成功问题
-
MySQL重置root密码提示"Unknown column ‘password"的解决方法
-
MySQL 5.7.16 修改密码提示 ERROR 1054 (42S22): Unknown column ''password'' in ''field l
-
PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法
-
mysql提示Changed limits: max_open_files: 2048 max_connections: 1910 table_cache: 6
-
mysql提示got timeout reading communication packets的解决方法
-
MySQL server has gone away错误提示解决方法
-
Linux安装完mysql后提示错误无法登陆mysql怎么办?
-
IIS下PHP连接数据库提示mysql undefined function mysql_connect()