【问题标题】:mysql, Error Code: 2013. Lost connection to MySQL server during querymysql,错误代码:2013。在查询期间丢失与 MySQL 服务器的连接
【发布时间】:2017-05-05 20:20:32
【问题描述】:

当我查询时:

SELECT * FROM database.table LIMIT 0, 100

效果很好。

但是当我尝试时:

SELECT * FROM database.table where date='2016-12-01' LIMIT 0, 100

那么它会给我一个错误:

错误代码:2013。在查询期间丢失与 MySQL 服务器的连接

我知道还有其他几个这样的线程,我已经尝试了建议的解决方案,包括将 connect_timeout 更改为一个非常大的值。不幸的是,它对我没有用。

任何建议将不胜感激。提前谢谢!

【问题讨论】:

    标签: mysql


    【解决方案1】:

    我不知道您的连接超时是多少。但是,您的查询可能正在执行全表扫描以查找适当的行。索引确实有助于查询:

    create index idx_table_date on `table`(date);
    

    【讨论】:

    • 感谢您的回复。当我尝试这样做时,我得到了同样的错误。有没有办法绕过它?以下是一些超时参数:connect_timeout=1000、net_read_timeout=600、net_write_time_out=600、wait_timeout=28800、interactive_timeout=28800。
    • @博强。 . .索引真的让我感到惊讶。
    • 是的……对我来说很奇怪。这就像把我的手绑起来,什么也做不了。有什么建议吗?
    • 不确定这是否相关。这是因为我添加了两个新的“布尔”列。
    • @博强。 . .看来您应该能够创建索引。也许你需要和你的 DBA 谈谈。
    猜你喜欢
    • 1970-01-01
    • 2012-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-22
    • 1970-01-01
    • 2020-07-26
    相关资源
    最近更新 更多