赞
踩
通过 show variables 命令查看当前 mysql 是否是区分大小写,如下:
mysql大小写敏感配置相关的两个参数,lower_case_file_system 和 lower_case_table_names。
查看当前mysql的大小写敏感配置
show global variables like '%lower_case%';
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| lower_case_file_system | ON |
| lower_case_table_names | 0 |
+------------------------+-------+
lower_case_table_names=1 表示 mysql 是不区分大小写的
lower_case_table_names=0 表示 mysql 是区分大小写的
MySQL 8.0 以上版本,大小写敏感配置比较坑,根据官方文档可以发现如下信息:
lower_case_table_names can only be configured when initializing the server.
Changing the lower_case_table_names setting after the server is initialized is prohibited.
lower_case_table_names 只能在初始化服务器时配置。 禁止在服务器初始化后更改 lower_case_table_names 设置。
lower_case_table_names 配置必须在安装好 MySQL 后,初始化 mysql 配置时才有效。一旦 mysql 启动后,再设置是无效的,而且启动报错。
需要重新初始化MySQL数据库,并且在初始化过程中,在初始化之前将lower_case_table_names = 1写入到my.cnf文件中
在修改配置之前,请先把 mysql 服务停止。执行下面命令:
systemctl stop mysqld.service
为了方便查看 mysql 的错误日志,可以先将 /var/log/mysqld.log 删除。命令如下:
rm /var/log/mysqld.log
将 mysql 数据库中的系统数据库和用户数据库都删除掉,执行下面命令:
(1)查看 /var/lib/mysql 目录下面的内容
[root@localhost mysql]# ls
auto.cnf binlog.000003 binlog.000006 binlog.000009 ca.pem ib_buffer_pool ib_logfile1 mysql phoenix server-cert.pem undo_001
binlog.000001 binlog.000004 binlog.000007 binlog.index client-cert.pem ibdata1 ib_logfile2 mysql.ibd private_key.pem server-key.pem undo_002
binlog.000002 binlog.000005 binlog.000008 ca-key.pem client
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。