首先,让我们确定每个状态变量:
我能想到这些数字有意义的唯一地方是在网络中。这些状态值表示传入和传出数据库连接的数据量。从另一个角度来看,这些字节很可能是可见的:操作系统。
您可以根据 MySQL 的观点测量netstat中传入/传出流量的数量。如果传入数据量很少,或者如果来自 MySQL 的传出数据量明显高于netstat所说的数量,请检查 MySQL 和/或网络。您可能还想寻找沿任何接口丢弃数据包的任何迹象。
有鉴于此,在调整时,我唯一能想到的您可能想要调整的是设置两件事:
什么是 MySQL 数据包?
以下是第 1-3 段的解释:
MySQL 网络通信代码是在查询总是相当短的假设下编写的,因此可以在一个块中发送到服务器并由服务器处理,这在 MySQL 术语中称为数据包。服务器为临时缓冲区分配内存来存储数据包,并请求足够的内存来完全容纳它。这种架构需要采取预防措施以避免服务器内存不足——数据包大小的上限,此选项可实现这一点。
与此选项相关的代码可在sql/net_serv.cc 中找到 。查看my_net_read(),然后按照对my_real_read()的调用并特别注意 net_realloc()。
此变量还限制了许多字符串函数的结果的长度。有关详细信息,请参阅sql/field.cc和 sql/intem_strfunc.cc。
鉴于此信息,您可能想要