【发布时间】:2016-06-09 19:10:15
【问题描述】:
我最近将 mysql5.6x 升级到 mariaDB v10,两者都包含在 XAMPP 中。但是,lower_case_table_names = 0 在 windows 的 mariaDB 中不起作用。 Lower_case_table_names = 1 和 2 工作正常但不是 0。以前它在 mysql 中工作正常。有什么想法吗?
【问题讨论】:
我最近将 mysql5.6x 升级到 mariaDB v10,两者都包含在 XAMPP 中。但是,lower_case_table_names = 0 在 windows 的 mariaDB 中不起作用。 Lower_case_table_names = 1 和 2 工作正常但不是 0。以前它在 mysql 中工作正常。有什么想法吗?
【问题讨论】:
identifier case sensitivity 上的 MariaDB 文档说:
lower_case_table_names 服务器系统变量起着关键作用。它 确定表名、别名和数据库名是否 以区分大小写的方式进行比较。如果设置为 0(默认开启 基于 Unix 的系统),表名和别名以及数据库名是 以区分大小写的方式进行比较。如果设置为 1(默认开启 Windows),名称以小写形式存储,不比较 区分大小写的方式。如果设置为 2(Mac OS X 上的默认值),名称 以声明的形式存储,但以小写形式进行比较。
因此可以使基于 Unix 的系统表现得像 Windows 和 忽略大小写敏感,但反过来不正确,因为 底层 Windows 文件系统无法支持。
(突出显示是我的)
突出显示的句子表示您不能在 Windows 中将 lower_case_table_names 设置为 0。
【讨论】: