MySQL参数max_connect_errors分析

查询错误日志,频繁报Got an error reading communication packets

查找问题:

①查询max_allowed_packet包的大小

mysql> show variables like '%max_allowed_packet%';
+--------------------------+------------+
| Variable_name | Value |
+--------------------------+------------+
| max_allowed_packet | 4194304 |
| slave_max_allowed_packet | 1073741824 |
+--------------------------+------------+
2 rows in set (0.00 sec)

这里给的值和我my.cnf的配置值16M不一样,怀疑是没生效,需要把配置文件修改为max_allowed_packet=16777216 (写成16*1024*1024可能报错,写成16M可能不生效)

这里直接临时生效可以执行如下命令

mysql> set global max_allowed_packet=16777216;

总结

出现Got an error reading communication packets主要有一下几个点:

1、max_allowed_packet设置太小或者客户端查询要求更大内存

2、以太网协议漏洞

3、线程池有问题

4、tcp/ip配置不好

5、以太网、交换机、网线等硬件配置出现错误

6、客户端在退出会话之前没有调用mysql_close();

7、客户端睡眠时间超过wait_timeout或者interactive_timeout的值;

你可能感兴趣的:(mysql)