windows下mysql表名不自动转换小写配置

mysql5.6版本配置文件有两个

1.默认的配置在program files/MySQL/MySQL Server 5.6/my-default.ini

2.一个在programData/MySQL/MySQL Server 5.6/my.ini

注意需要配置第二个的my.ini添加

[mysqld]

lower_case_table_names=2

 

重启MySQL即可

 

 

引文:

windows 和linux对大小写的敏感性不同而导致的。数据库和表名在 Windows 中是大小写不敏感的 ,而在大多数类型的 Unix 系统中是大小写敏感的

 

windows 下的解决方法:

 

my.ini 里面的mysqld部分

加入 lower_case_table_names=2 

[mysqld]
lower_case_table_names=2
set-variable=lower_case_table_names=0
port= 3306

 

注: 1 表示不区分大小写 2表示区分大小写

 

然后重启mysqld服务器 ,在xampp重启mysqld服务可以通过xampp目录下的mysql_start.bat

 

重启mysqld服务后,命令行进入mysql,要确认已经把 lower_case_table_names值改成2了

 

 

mysql> show variables like '%low%';

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

| Variable_name          | Value   |

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

| log_slow_queries       | OFF     |

| low_priority_updates   | OFF     |

| lower_case_file_system | ON      |

| lower_case_table_names | 2       |

| max_allowed_packet     | 1047552 |

| slow_launch_time       | 2       |

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

6 rows in set (0.06 sec)

 

再次导入product.sql 发现已 经可以区分大小写 。

=========================================================

Linux平台的tips

原来LINUX下面默认安装MYSQL后:区分表明的大小写,不区分列名的大小写。
又不能阻止HIBERNATE生成大小写固定的SQL,就只有修改MYSQL的配置啦,修改如下:

vi /etc/mysql/my.cnf
在[mysqld]后添加
lower_case_table_names=1

重启MYSQL服务
其中配置文件
lower_case_table_names=0 区分大小写
lower_case_table_names=1 不区分大小写

MYSQL在LINUX下数据库名、表名、列名、别名大小写规则如下:
1.数据库名与表名是严格区分大小写的
2.表的别名是严格区分大小写的
3.列名与列的别名在所有的情况下均是忽略大小写的
4.变量名也是严格区分大小写的

MYSQL在WINDOWS下都不区分大小写

 

时间: 2024-09-19 22:20:47

windows下mysql表名不自动转换小写配置的相关文章

解决windows下MySQL表名大写自动变小写的问题

解决windows下MySQL表名大写自动变小写的问题   有些人可能会遇到在windows下,表名不能用大写字母, 即使使用了大写字母的建表语句,还是会被自动转成小写.   解决方法:  打开 MySQL 的配置文件 my.ini ,在 [mysqld] 节下加入    Xml代码   lower_case_table_names=0     重启MySQL,大功告成.

mysql在windows下支持表名大小写,lower_case_table_names

原文:mysql在windows下支持表名大小写,lower_case_table_names windows下mysql默认是不支表名大小写的,也就是表名大小写不敏感. 用phpmyadmin创建的驼峰式表名,全部被强制成小写. mysql表名大小写敏感的参数:lower_case_table_names.   Windows2012 下的C:\ProgramData\MySQL\MySQL Server 5.6\my.ini 文件 在[mysqld]下加上lower_case_table_n

ASP.NET MVC4 音乐商店,Entity Framework 4.1 表名被自动转换成复数问题解决

 做ASP.NET MVC3 Music Store示例时,   EntityFramework4.1 下表名被自动转换成复数问题: 解决方案:    using System; using System.Collections.Generic; using System.Data.Entity; using ContosoUniversity.Models; using System.Data.Entity.ModelConfiguration.Conventions; namespace C

Windows下MySQL安装配置方法图文教程_Mysql

Windows下的安装与配置MySQL详细步骤思路,分享给大家,供大家参考,具体内容如下 本文介绍Windows XP下的安装与配置. 要想在Windows中运行MySQL,需要: Ø 32位Windows操作系统,例如9x.Me.NT.2000.XP或Windows Server 2003. 基于Windows NT的操作系统(NT,2000,XP,2003),将MySQL服务器做为服务来运行.强烈建议使用基于Windows NT的操作系统. Ø TCP/IP协议支持(也许是所有数据库系统的基

Windows下MySQL的绿化与精简

原文:Windows下MySQL的绿化与精简 MySQL本身就支持安装使用,本文只是对自己使用免安装版MySQL的经历记录下来,以便以后查看. 首先是获取Windows下的MySQL免安装版本,这个需要去到MySQL官网进行下载.我一般喜欢把首页页面拖动到最下方,点击MySQL Server进入下载. 我下载了MySQL5.5.33版本(zip包). 得到的文件就是mysql-5.5.33-win32.zip,解压出来后我把名字改成了mysql. 我们保留文件夹bin.data和share,其余

Linux mysql表名区分大小写设置与实验测试

修改mysql教程 server安装目录下的 my.ini 文件,在mysqld节下加入下面一行 set-variable=lower_case_table_names=0 (0:大小写敏感:1:大小写不敏感)最后重启一下mysql服务即可. 1.lower_case_tables_name=0的情况(linux默认) 直接启动mysql教程,在mytest库中新建表mytable和mytable mysql> use mytest; mysql> create table mytable(i

ubuntu mysql表名大小写区分

近期开发线上操作系统用的ubuntu,数据库用的mysql,突然发现mysql表名大写报错,找一下原因,看了下mysql的配置,果真可以设置,窃喜. 先找到你MySQL的my.cnf配置文件并修改,当然如果你的路径不一定跟我一样,这点要注意一下 在[mysqld]中添加 lower_case_table_names=1 第一步:vi/etc/mysql/my.cnf  第二步:添加 lower_case_table_names=1  第三步:重启mysql /etc/init.d/mysql r

windows下mysql 代码宕机的问题。。。

问题描述 windows下mysql 代码宕机的问题... 有一台windows的服务器,每天早上都会在下面mysql的代码宕机,但是如果用远程连接这个服务器,就不会宕机了,难道是mysql待机的时候有什么没有开启?,但是服务器已经设置成不待机状态啊,不知道什么原因,轻大神帮助. if(mysql_stmt_prepare(m_pstmt psql (unsigned long)strlen(psql)) != 0) { mysql_stmt_close(m_pstmt); } 解决方案 你这个

数据库-Windows下mysql运行慢(innodb)

问题描述 Windows下mysql运行慢(innodb) mfc通过ADO连接mysql,开启连接数为50个. 已经设置过innodb_flush_log_at_trx_commit为2,innodb_buffer_pool_size为1G 目前问题: 1.数据库慢日志时限1s,持续增多,但是查看慢日志,里面只是简单的insert或者是updata语句,很简单的那种,提出来单独运行时间又是0.0x,不明白什么原因. 2.连续执行100+的语句,在程序内的循环,每一个都是一个updata,但是运