在windows下mysql查询是不区分大小写的,linux系统库表查询是严格区分大小写的。因此,windows不需要设置。
程序开发中,往往我们都需要设置库表查询不区分大小写,建表的人不同,用表的人也不同,不区分大小写的查询,有利于开发。
linux系统设置方法:
- 用root登录,打开并修改 /etc/my.cnf
mysql -uroot -p....
vim /etc/my.cnf
在[mysqld]节点下,加入一行:lower_case_table_names=1
设置该值为0的时候表示区分大小写,1表示不区分大小写。 - 重启mysql服务
service mysqld restart
注意:
修改配置之前如果原先的表名存在大写,需要备份数据并修改表名,配置完重新导入表和数据。否则,原先大写的表名无法识别。解决方法如下:
(1)在修改配置之前将所有表的表结构和表数据导出做备份
(2)删除原来的表
(3)修改配置
(4)将表结构和表数据导入