MySQL 在Linux下设置MySQL区分大小写
  • 2023-01-25 16:27:39
  • 7683 热度
  • 0 评论

MySQL在Linux下数据库名、表名、列名、别名大小写规则: 

1、数据库名与表名是严格区分大小写 
2、表的别名是严格区分大小写 
3、列名与列的别名在所有的情况下均是忽略大小写的 
4、变量名也是严格区分大小写的 
注意: 
A、Linux下MySQL安装完后默认:区分表名的大小写,不区分列名的大小写 
B、改变表名的大小写区分规则的方法:用root帐号登录,在/etc/my.cnf 或 /etc/mysql/my.cnf 中的[mysqld]下面添加添加lower_case_table_names=1 

# The MySQL server
[mysqld]
port            = 3306
socket          = /var/lib/mysql/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
# add here
lower_case_table_names=1

重启MySQL服务,若设置成功,则不再区分表名大小写。 


注意:如果在/etc或/etc/mysql找不到my.cnf ,需要从其他地方拷贝过来,因为使用rpm安装mysql时,需要手工拷贝my.cnf

具体操作: 
到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下: 
[root@test1 mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf 
其中: 
my-small.cnf是为了小型数据库而设计的。不应该把这个模型用于含有一些常用项目的数据库。 
my-medium.cnf是为中等规模的数据库而设计的。 
my-large.cnf是为专用于一个SQL数据库的计算机而设计的。 
my-huge.cnf是为企业中的数据库而设计的。 

[ Windows ] 
MySQL在Windows下数据库名、表名、列名、别名都不区分大小写。 
如果想大小写区分则在my.ini 里面的mysqld部分 
加入 lower_case_table_names=0 
注意:Windows中即使改了这个设置,在查询时还是不会区分大小写。只是在导入导出时会对大小写有区别。


alay

Flame

Hello world!

0 评论
留下评论