首先我们需要明白的一点就是:
Linux 系统默认情况下MySQL数据库是区分大小写的,
Windows系统默认情况下MySQL数据库是不区分大小写的。
1. 查看数据库大小写配置
show variables like '%lower%';
±-----------------------±------+
| Variable_name | Value |
±-----------------------±------+
| lower_case_file_system | ON |
| lower_case_table_names | 0 |
±-----------------------±------+
2. 使用root权限登录,修改配置文件 etc/my.cnf
需要注意的是配置文件的位置不一定就是这个,我们在使用docker搭建环境的时候MySQL的默认配置文件的路径是:/etc/mysql/mysql.conf.d/mysqld.cnf,所以在修改的时候我们需要明确配置文件的路径
3. 在配置文件的[mysqld]节点下,加入一行:
lower_case_table_names=1
4. 重启MySQL :
systemctl restart mysqld.service
5. 查看数据库大小写配置

show variables like '%lower%';
±-----------------------±------+
| Variable_name | Value |
±-----------------------±------+
| lower_case_file_system | OFF |
| lower_case_table_names | 1 |
±-----------------------±------+
看到以上信息就代表我们已经大功告成了
需要注意的一点就是:我们在设置忽略大小写的时候,数据库中最好不要有数据库的名字已经使用大小写区分,具体原因大家也可以自行尝试
(发生表或数据库不能删除修改的情况,将以上配置改回即可,这也是在修改配置的时候不要出现数据库或者表已经使用大小写的情况)
扩展:
部署在docker环境中的MySQL数据库怎么忽略大小写
1、我们需要进入已经创建好的docker容器中
docker exec -it mysql bash
2、使用正常的MySQL命令进入MySQL
mysql -u root -p
3、重复上述修改配置文件的步骤
vim /etc/mysql/mysql.conf.d/mysqld.cnf
4、退出,并重启MySQL服务
docker restart mysql
希望上述内容能对您有所帮助,谢谢~
或者docker创建容器时加入参数:
docker run -d \
-p 3306:3306 \
--name mysql \
-v /path/to/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-e lower_case_table_names=1 \
mysql:latest
版权声明:本文内容始发于CSDN>作者:zyyn_未来可期,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
始发链接:https://blog.csdn.net/weixin_42222436/article/details/121024398
在此特别鸣谢原作者的创作。
此篇文章的所有版权归原作者所有,商业转载建议请联系原作者,非商业转载请注明出处。