【发布时间】:2015-09-22 16:32:25
【问题描述】:
在 MYSQL Workbench 上,我正在运行这个查询:count(*) from test.nameTable 我在这个表中有几百万行。
过了一会儿我得到这个错误:Lost connection to MySQL server during query
我在其他地方看到了这个问题及其答案,但没有一个答案有帮助。
我尝试将所有超时和数据包大小全局变量设置为它们的最大值,并以某种方式拆分我的查询..
但是这些方法都不起作用。
SET GLOBAL connect_timeout=10000000
SET GLOBAL net_read_timeout=10000000
SET GLOBAL max_allowed_packet=1073741824
有人知道可能是什么问题以及如何解决吗?
【问题讨论】:
-
对索引列进行计数
-
索引列与其他列不同吗?我尝试了主键 - 它也没有工作
-
表是什么存储类型(MyISAM、InnoDB 等)?我似乎记得这对 COUNT 有很大影响...
-
存储引擎是InnoDB
-
您是在服务器上运行客户端,还是从另一台机器上运行?如果从另一台机器上,我看到这种类型的错误是由与 MySQL 完全无关的东西引起的:防火墙 NAT 超时 5 分钟。不用说,对于一个需要 5 分钟的查询,有些地方是错误的,但我之前已经看到过由它引起的超时。
标签: mysql sql mysql-workbench