首页 > 解决方案 > 设置 lower_case_table_names=0 时如何解决 Can't connect to MySQL server on 'localhost' (10061)?

问题描述

在 mysql 中创建表时,我注意到我所有的表名都以小写开头,即使我用大写命名它们也是如此。

我发现进入:

C:\ProgramData\MySQL\MySQL 服务器 8.0

打开 my.ini 文件并更改lower_case_table_names=0

会根据这个视频的伎俩。

完成上述操作后,我关闭了服务器,重新启动了电脑,当再次尝试启动服务器时,我收到以下错误:

无法连接,服务器可能没有运行。无法连接到“localhost”上的 MySQL 服务器 (10061)

当我变回lower_case_table_names=1

它再次起作用。我该如何解决这个问题?

编辑:

我发现我可以通过更改属性而不是进入ini文件

选项文件

然后在一般选项卡下我找到lower_case_table_names并将其更改为 0

但又是同样的错误。

标签: mysqlsqlwindowssettings

解决方案


你可以在这里阅读https://bugs.mysql.com/bug.php?id=89035

从 8.0.5 开始

现在禁止使用与初始化服务器时使用的设置不同的 lower_case_table_names 设置来启动服务器。该限制是必要的,因为各种数据字典表字段使用的排序规则基于服务器初始化时定义的设置,并且使用不同的设置重新启动服务器会在标识符的排序和比较方式方面引入不一致。

禁止这样做,导致服务无法启动。


推荐阅读