lower_case_table_names参数是用来设置MySQL是否让Schema和数据表大小写敏感,我测试的是在查询界面和MySQL控制台界面无法改变它的值,要在配置文件中改变(先关闭服务),一般情况下my.ini(在C:\ProgramData\MySQL\MySQL Server 5.7/里,linux的是my.cnf文件一般在/etc/)是没有这个配置的,

需要手动在[mysqld]下面一行加一条:lower_case_table_names=2(后面没有分号什么的)来设置大小写敏感度,然后重启。但是这个配置的取值范围貌似跟操作系统密切相关。

我只测试了Windows系统中lower_case_table_names只能设置1或2而不能设置0(Linux中貌似默认是0。但不知道能否设置为1)。

设置为1表示MySQL不区分Schema和数据表的大小写,并且创建Schema和表时所有大写字母都会自动被MySQL转换成小写(但是注意,如果之前设置了值为2而创建一个大写的Db,后将值改为1该Db的名字不会转为小写)。(如建立Schema名为DbTesting,刷新后该名就变为了dbtesting)(注意,为1时字段是可以在名字上区分大小写但是操作时是不区分的,比如你有字段ID,它生成后就是ID而不会变成id,但是where id和where ID都是可以的)。

设置为0表示MySQL区分Schema和表的大小写,创建Schema或表时你写的什么名,存入MySQL中后就是什么值,即创建DbTesting,该名不会被任何转换,且调用时也区分名字的大小写(Windows下设置为0将无法启动MySQL服务)。

设置为2表示MySQL不区分Schema和表的大小写,但是你创建Schema和表时写的什么名,存入MySQL中后就是什么值,即创建DbTesting,该名不会被转换为小写,但是调用时不区分大小写。

如果值设置为1或2,则假设你创建了Schema名为DbTesting,1转换为dbtesting,2仍显示为DbTesting,但是它们都不能创建如:dBTesting、dbtesting、DBTEsting等等Schema,否则提示Schema已存在,对于表也是如此。而且用

Schema和表及列名时都可以忽略大小写,即insert into TmpTb。。。和insert into tmPtB。。。作用是一样的(对于列名也一样,如Insert into dt(ClsName) values("ff");和insert into dt(clsname) values("ff");也是一样的)。

无论Windows或Linux最好都设置为2

经过测试,至少CentOS7中的MySQL5.7.19的lower_case_table_names的值无法改成2,只能是0或1,因此干脆就都用1好了,即忽略大小写(因为如果一边是0,一边是1那么命名规范就会变成避免大写字母中间用下划线分开,这和将该值设置为1没区别)

注意:为了避免大小写引发的问题,一种推荐的命名规则是:在定义数据库、表、列(列名可以另行考虑)的时候采用小写字母加下划线的方式,不使用任何大写字母。

个人的MySql配置总结的更多相关文章

  1. linux下安装apache与php;Apache+PHP+MySQL配置攻略

    1.apache   在如下页面下载apache的for Linux 的源码包    http://www.apache.org/dist/httpd/;   存至/home/xx目录,xx是自建文件 ...

  2. MySQL 配置

    MySQL 配置 1.服务启动: (1)使用 service 启动:service mysqld start (2)使用 mysqld 脚本启动:/etc/inint.d/mysqld start ( ...

  3. mysql配置mysql-proxy读写分离

    MySQL配置读写分离 192.168.23.131与192.168.23.132两台服务器,131是主,132是从,131是读写,132是只读.myql-proxy的IP是192.168.23.13 ...

  4. mysql配置之skip-external-locking

    转载:http://www.kuqin.com/database/20120815/328905.html MySQL的配置文件my.cnf中默认存在一行skip-external-locking的参 ...

  5. MySQL配置

    一.登录MySQL 要登录到MySQL只需要使用如下命令. mysql -h localhost -u root -p localhost:IP地址: root:用户名: database:数据库名( ...

  6. hive 的mysql配置

    hive默认使用的是Derby数据库,Derby是一个嵌入式数据库,数据库一般创建在运行hive命令的目录,如果切换目录运行,则找不到数据库 hive mysql配置: 官网地址:https://cw ...

  7. 2016年5月19日php,mysql配置

    1.php配置 1. 配置disable_functiondisable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshe ...

  8. CentOS6.5 MySQL 配置设置总结笔记

    三.登录MySQL 登录MySQL的命令是mysql, mysql 的使用语法如下:  mysql [-u username] [-h host] [-p[password]] [dbname]  u ...

  9. MySql配置参数很全的Mysql配置参数说明

    MySql配置参数 很全的Mysql配置参数说明 1. back_log 指定MySQL可能的连接数量.当MySQL主线程在很短的时间内得到非常多的连接请求,该参数就起作用,之后主线程花些时间(尽管很 ...

  10. Ubuntu下MySql配置

    Ubuntu下MySql配置 安装MySQL 命令: sudo apt-get install mysql-server MySQL初始配置及管理 启动MySQL mysql start : mysq ...

随机推荐

  1. HTML5开发必备的工具

    现在除了移动APP开发之外,比较火的就是html5开发了,现阶段的HTML5被看做是Web开发者创建流行web应用的利器,增加了对视频和Canvas2D的支持,它的优点就是可以跨平台使用,比如你是开发 ...

  2. 逆向知识第十四讲,(C语言完结)结构体在汇编中的表现形式

    逆向知识第十四讲,(C语言完结)结构体在汇编中的表现形式 一丶了解什么是结构体,以及计算结构体成员的对其值以及总大小(类也是这样算) 结构体的特性 1.结构体(struct)是由一系列具有相同类型或不 ...

  3. 在windows下vs使用pthread

    首先从http://sourceware.org/pthreads-win32/下载pthread 的windows安装包,我下的是pthread-w32-2-9-1-release.zip,其他版本 ...

  4. Android-DataBinding入门1

    1.需要开启DataBinding功能: 在build.gradle配置: android{ dataBinding{ enabled = true } } 2.布局 布局中,根节点要以layout开 ...

  5. Failed to load the JNI shared lib...

    启动eclipse报错:Failed to load the JNI shared lib... 解决办法如下:保证JDK与eclipse相匹配 在同一台计算机中,如果JDK是32位的,那么eclip ...

  6. Linux驱动调试-根据oops的栈信息,确定函数调用过程

    上章链接入口: http://www.cnblogs.com/lifexy/p/8006748.html 在上章里,我们分析了oops的PC值在哪个函数出错的,那如何通过栈信息来查看出错函数的整个调用 ...

  7. python使用rsa库做公钥解密(网上别处找不到)

    使用RSA公钥解密,用openssl命令就是openssl rsautl -verify -in cipher_text -inkey public.pem -pubin -out clear_tex ...

  8. Spring Cloud Eureka服务Demo级搭建

    仅用于个人备忘,有错误之处还请文明指出,3Q 开发环境以及工具:Windows.JDK8.STS 1.新建SpringBoot工程作为Eureka Server                    ...

  9. Vue 事件

    一.事件冒泡 方法一.使用event.cancelBubble = true来阻止冒泡 <div @click="show2()"> <input type=&q ...

  10. java 邮件发送的公共方法

    protected static String host = "true"; protected static String auth = "smtp.163.com&q ...