运行作业时,MySQL查询挂起在";“网上写作”;长期状态

运行作业时,MySQL查询挂起在";“网上写作”;长期状态,mysql,multithreading,kernel,state,system-variable,Mysql,Multithreading,Kernel,State,System Variable,我已经为这个问题挣扎了4天了。最近我们将DC迁移到了云。在这之后,当从远程机器发送查询时,它会在很长一段时间内(从1200-3000秒)处于“写入网络”状态,我们将面临这个问题。当我在本地主机中运行相同的查询时,它会在几秒钟内返回结果 我已经调整了一些服务器变量,如net_read_timeout和net_write_timeout,但这是没有用的 服务器配置: MySQL社区版本5.1.69 CentOS 6.4版 内核版本:2.6.32-358.el6.x86_64(这是非常旧的内核版本,可

我已经为这个问题挣扎了4天了。最近我们将DC迁移到了云。在这之后,当从远程机器发送查询时,它会在很长一段时间内(从1200-3000秒)处于“写入网络”状态,我们将面临这个问题。当我在本地主机中运行相同的查询时,它会在几秒钟内返回结果

我已经调整了一些服务器变量,如net_read_timeout和net_write_timeout,但这是没有用的

服务器配置: MySQL社区版本5.1.69 CentOS 6.4版 内核版本:2.6.32-358.el6.x86_64(这是非常旧的内核版本,可能是这导致了整个问题)


非常感谢您的任何帮助。

随机猜测:网络MTU或数据包丢失问题?“在本地主机中”,意思是在新的数据库服务器上?(人们有时会随意地使用“localhost”,其实他们的意思是“在我的工作站上”,我想这不是你的意思。)超时变量除了更快地终止暂停的查询之外,不会做任何事情。我的下一步将是在服务器和客户端上跟踪TCP数据包,寻找重试、离开一台服务器但未到达客户端的数据包,以及ICMP消息,如“需要碎片,但设置了DF位”。哪个云?此外,与堆栈溢出不同,这个问题应该继续或(一个或另一个,而不是两者)。这两个站点都很优秀,但我的直觉告诉我,您希望服务器出现故障,因为我认为在这一点上,这很可能最终是服务器/网络问题,而不是数据库问题。我想你可以点击
标志
,让主持人将问题迁移。我可能错了,但可能值得一试。堆栈溢出主要集中在“编程”上。Michael sqlbot我们进行了3个小时的ping测试,没有数据包丢失。我们转移到Azure云。如果不是数据包丢失,那么您将希望调查与MTU相关的问题。从遇到问题的客户端计算机远程运行查询
SELECT REPEAT('a',1)。然后将1更改为2,然后更改为3,然后更改为4。。。每次递增1。当然,写下这个脚本。如果您有MTU问题,您应该在值达到1500之前的某个时间点经历挂起并没有响应。