当前位置: 首页 > 知识库问答 >
问题:

创建索引导致“失去与MySQL的连接”

鞠通
2023-03-14

我有一张这样定义的表。其中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

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

共有2个答案

阎麒
2023-03-14

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

戎永福
2023-03-14

在MySql Workbench中查找类似“connection keep alive”的属性。看到这个答案:MySQL Workbench:如何保持连接有效

 类似资料:
  • 主要内容:一、准备工作,二、索引失效规则,1.优先使用联合索引,2.最左匹配原则,3.范围条件右边的列索引失效,4.计算、函数导致索引失效,5.类型转换导致索引失效,6.不等于(!= 或者<>)索引失效,7.is null可以使用索引,is not null无法使用索引,8.like以%开头,索引失效,9.OR前后存在非索引的列,索引失效,10.字符集不统一,三、建议一、准备工作 首先准备两张表用于演示: 二、索引失效规则 1.优先使用联合索引 如下一条sql语句是没有索引的情况: 我们通过建立

  • 主要内容:基本语法,创建普通索引,创建唯一索引创建索引是指在某个表的一列或多列上建立一个索引,可以提高对表的访问速度。创建索引对 MySQL 数据库的高效运行来说是很重要的。 基本语法 MySQL 提供了三种创建索引的方法: 1) 使用 CREATE INDEX 语句 可以使用专门用于创建索引的 CREATE INDEX 语句在一个已有的表上创建索引,但该语句不能创建主键。 语法格式: CREATE <索引名> ON <表名> (<列名> [

  • 首先,我需要指出我在我的机器上运行了Wikipedia转储的sql文件,为了能够运行,我需要更新许多关于内存中可用索引大小的设置和一些其他设置。我只想提到那些大型sql查询运行成功,在内存或超时方面没有任何问题。 现在我有了一个表pagelinks(pl_from,pl_title),它显示了出现在每个维基百科页面中的链接,例如,数据可以是(1,“title1”),(1,“title2”),(2,

  • 问题内容: 我的Spring Boot应用程序总是在早上向我显示此whitelabel错误:无法打开JPA EntityManager进行事务;嵌套异常是javax.persistence.PersistenceException:org.hibernate.TransactionException:JDBC开始事务失败: 我在网上搜索,我认为可能是mysql关闭了8个小时的非活动连接。但是,根据

  • 问题内容: 我添加了一个构建步骤来执行Python脚本。 在此脚本中,使用lint.Run(.. args)调用pylint来检查代码。 该脚本可以工作,但是最后,构建失败,并显示唯一的错误消息: 有人知道为什么会这样吗? 问题答案: 看来您的pylint执行退出状态为非零(缺少脚本,错误的选项…),也许您在退出脚本时引发了异常或

  • 重启MySQL后丢失Wildfly连接 我们使用2个版本MySQL版本14.14发行版5.6.51,Linux(x86_64)使用EditLine包装和MySQL版本8.0.28Linuxx86_64(MySQL社区服务器-GPL) 我们尝试了两个版本的Wildfly Wildfly-10.1.0。最终版本和wildfly-19.1.0。最终的 我们使用了JDBC数据库连接器版本is-8.0.19