Linux下 设置Mysql表名不区分大小写

情景:公司近期在将数据库从Oracle转为Mysql,由于之前在Oracle中表名是不区分大小写,因此到Mysql中就出现了找不到表的问题,经上网查询,发现在linux下Mysql的表名是区分大小写的,但是有参数可以使其不区分大小写。具体操作如下:

一、linux中mysql大小写详情:

1、数据库名严格区分大小写

2、表名严格区分大小写的

3、表的别名严格区分大小写

4、变量名严格区分大小写

5、列名在所有的情况下均忽略大小写

6、列的别名在所有的情况下均忽略大小写

二、设置Mysql表名不区分大小写

1、切换到root用户

$ su - root

2、修改/etc/my.cof配置文件,

# sed -i ‘/\[mysqld\]/a\lower_case_table_names=1‘ /etc/my.cnf

lower_case_table_names参数详解:

0:区分大小写

1:不区分大小写

3、重启mysql

# service mysqld restart

4、查看mqsql参数

# mysql -uroot -p

> show variables like "%case%" ;

+------------------------+-------+

| Variable_name          | Value |

+------------------------+-------+

| lower_case_file_system | OFF   |

| lower_case_table_names | 1     |

+------------------------+-------+

2 rows in set (0.00 sec)

三、其他

在Windows中,MYSQL一直都是不区分大小写的。

时间: 2024-10-13 23:27:41

Linux下 设置Mysql表名不区分大小写的相关文章

linux/centos下设置Mysql表名不区分大小写

情景:公司近期在将数据库从ORACLE转为MYSQL,由于之前在ORACLE中表名是不区分大小写,因此到mysql中就出现了找不到表的问题,经上网查询,发现在linux下mysql的表名是区分大小写的,但是有参数可以使其不区分大小写. 一.linux中mysql大小写详情: 1.数据库名严格区分大小写 2.表名严格区分大小写的 3.表的别名严格区分大小写 4.变量名严格区分大小写 5.列名在所有的情况下均忽略大小写 6.列的别名在所有的情况下均忽略大小写 二.添加参数使其不区分大小写 1.切换到

linux 下 设置 MySQL8 表名大小写不敏感方法,解决设置后无法启动 MySQL 服务的问题

在安装完成之后,初始化数据库之前,修改 my.cnf 打开mysql配置文件 vim /etc/my.cnf 在尾部追加一行 lower_case_table_names=1 并保存,然后再初始化数据库. 重启mysql, systemctl restart mysqld.service 如果这个操作是初始化数据库之后,也就是安装后运行过服务,那就可能会出错. 错误类似于Job for mysqld.service failed because the control process exite

设置Linux下Mysql表名不区分大小写

1.Linux下mysql安装完后是默认:区分表名的大小写,不区分列名的大小写:2.用root帐号登录后,在/etc/my.cnf中的[mysqld]后添加添加lower_case_table_names=1,重启MYSQL服务,这时已设置成功:不区分表名的大小写:lower_case_table_names参数详解:lower_case_table_names=0其中0:区分大小写,1:不区分大小写 MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的:1.数据库名与表名是严格

【MySql】linux下,设置mysql表名忽略大小写

[障碍再现] 状况描述01: 在LINUX下调一个程序经常报出找不到表,但是我明明是建了表的, 测试的时候,遇到一些问题,从Windows平台访问虚拟机中的Web应用,经常报出找不到表,但自己明明在数据库中看到相关的数据表和数据,在linux中通过MYSQL的命令行下也可以查到,为什么从Windows平台上的程序来访问虚拟机中的MySql时,就找不到呢? [原因分析] 原来是LINUX下的MYSQL默认是要区分表名大小写的,而在windows下是不区分. 从windows下导出的数据脚本中数据表

Linux下设置MySQL不区分大小写

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

MySQL表名不区分大小写的设置方法

MySQL默认是区分表名大小写的,通过如下设置,可以让MySQL不区分表名大小写:1.用root登录,修改 /etc/my.cnf:2.在[mysqld]节点下,加入一行: lower_case_table_names=13.重启MySQL即可: 其中 lower_case_table_names=1 参数缺省地在 Windows 中这个选项为 1 ,在 Unix 中为 0,因此在window中不会遇到的问题,一旦一直到linux就会出问题的原因(尤其在mysql对表起名时是无法用大写字母的,而

知识点:MySQL表名不区分大小写的设置方法

在用centox安装mysql后,把项目的数据库移植了过去,发现一些表的数据查不到,排查了一下问题,最后发现是表名的大小写不一致造成的. mysql在windows系统下安装好后,默认是对表名大小写不敏感的,但是在linux下,一些系统需要手动设置. 用root登录,打开并修改 /etc/my.cnf:在[mysqld]节点下,加入一行: lower_case_table_names=1. 重启mysql服务 service mysqld restart 或 /etc/inint.d/mysql

linux下设置mysql apache 开机后自动启动

1 #将mysql启动脚本放入所有脚本运行目录/etc/rc.d/init.d中 2 cp /lamp/mysql-5.0.41/support-files/mysql.server /etc/rc.d/init.d/mysqld 3 4 #改变权限 5 chown root.root /etc/rc.d/init.d/mysqld 6 7 #所有用户都可以执行,单只有root可以修改 8 chmod 755 /etc/rc.d/init.d/mysqld 9 10 #将mysqld 放入lin

linux下设置mysql环境变量

xmapp集成的lampp下mysql没设置环境变量前,要使用mysql需cd到/etc/lampp/bin目录下,执行mysql -uroot -p123456进行访问,设置环境变量后,随意在某目录下都可以直接执行mysql -uroot -p123456 进行访问,具体配置如下: 找到etc目录下profile文件,vi ./profile在最后加上export PATH=/opt/lampp/bin:$PATH,保存好后,source下profile让其设置生效,此时,随意在某目录下都可以