跳到主要内容

大小写敏感

Windows 下,默认大小写不敏感。Linux 下默认大小写敏感

-- 0 大小写敏感, 1 大小写不敏感
show variables like '%lower_case_table_names%'; -- CentOS7 下

一、大小写敏感的规则

  • 数据库名、表名、表别名、变量名严格区分大小写
  • 关键字、函数不区分大小写
  • 列名、列别名在所有情况下忽略大小写

二、修改大小写敏感设置的方法

my.cnf 中加入

[mysqld]
lower_case_table_names=1

注意:这个设置需要在 mysql 初始化之前设置,不然的话,会导致 mysql 无法启动成功。

通过 tail -n 10 /var/log/mysqld.log 查看日志

正确修改 lower_case_table_names 的步骤

  • 停止 MySQL 服务
  • 删除数据目录 rm -rf /var/lib/mysql
  • 修改 my.cnf 文件 (加入 lower_case_table_names=1
  • 启动 MySQL 服务
show variables like 'lower_case_table_names';
use mysql;
use MYSQL;