在连接数据库的时候发现库里有表的名字只是大小写不一样,但就是连不上,我用的是mysql5.7.8.
默认没有开启忽略大小写,这里记录一下。
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
扩展:
部署在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