mysql丢失了连接错误

时间:2017-11-07 13:51:56

标签: c++ mysql iocp

目前,我正在开发一个项目,将mysql与IOCP服务器集成,以收集传感器数据并验证从客户端收集的数据。

但是,有一种情况是mysql错过了连接。

查询本身是一个简单的查询,它插入一行记录或获取日期间隔之间的平均值。

每个传感器的数据每5秒同时流入DB。当传感器的消息偶尔出现或与客户端的消息重叠时,连接断开。

在查询期间失去与mysql服务器的连接

关于抛出上述信息

max_allowed_packet数字已更改。 interactive_timeoutnet_read_timeoutnet_write_timeoutwait_timeout

似乎如果存在重叠查询,则会发生错误。

如果您知道解决方案,请告诉我。

2 个答案:

答案 0 :(得分:1)

我在MySQL服务器中遇到类似的问题,查询非常简单,并发查询的数量很多。我不得不禁用查询缓存来解决问题。您可以尝试使用以下语句禁用查询缓存。

SET GLOBAL query_cache_size = 0;
SET GLOBAL query_cache_type = 0;

请注意,重新启动服务器将再次启用查询缓存。如果需要保留配置,请将配置放在MySQL配置文件中。

答案 1 :(得分:0)

您可以在命令下运行并检查当前超时吗?

SHOW VARIABLES LIKE '%timeout';

如果需要,您可以更改超时 -

SET GLOBAL <timeout_variable>=<value>;