【问题标题】:Create index causes 'Lost connection to MySQL'创建索引导致“丢失与 MySQL 的连接”
【发布时间】:2015-02-26 12:25:58
【问题描述】:

我有一个定义为this 的表。其中ProviderId 是主键,StateID 是来自另一个表的外键。它在我的笔记本电脑上运行,因此,它是一个本地数据库。在我的表中,我有大约 900 万个条目。我运行以下命令为表创建一个新索引:

CREATE INDEX name_addr ON providers (ProviderName, Address, StateID, Zip);

运行了大约 10 分钟,我收到以下错误消息:

Error Code: 2013. Lost connection to MySQL server during query - 600.547 sec

我检查了我的日志,结果是这样的:

150226 13:07:31    12 Query CREATE INDEX name_addr ON providers (ProviderName, Address, StateID, Zip)
150226 13:17:32    13 Connect   root@localhost on 
           13 Query set autocommit=1
           13 Query SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
           13 Query SHOW SESSION VARIABLES LIKE 'lower_case_table_names'
           13 Query SELECT current_user()
           13 Query SET CHARACTER SET utf8
           13 Query SET NAMES utf8
           13 Query SET SQL_SAFE_UPDATES=1
           13 Query SELECT CONNECTION_ID()
           13 Query SHOW SESSION STATUS LIKE 'Ssl_cipher'
           13 Query USE `workflydb`
           13 Query set autocommit=1

虽然,我收到一条错误消息,但当我检查我的索引时,结果是this。我不知道问题可能是什么,以及如何解决它,或者我创建的索引是否真的有效。有什么想法吗?

【问题讨论】:

    标签: mysql database


    【解决方案1】:

    在您的 MySql 工作台中寻找类似“连接保持活动”的属性。看到这个答案:MySQL Workbench: How to keep the connection alive

    【讨论】:

      【解决方案2】:

      这可能是因为超时问题。将超时更改为更大的值。您可以在命令行界面或 mysql 工作台中执行此操作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-02-17
        • 1970-01-01
        • 2021-08-22
        • 2014-07-30
        • 1970-01-01
        • 1970-01-01
        • 2016-08-04
        • 2013-10-17
        相关资源
        最近更新 更多