美文网首页Java实战技术技术文
细说MySQL区分字母大小写

细说MySQL区分字母大小写

作者: JavaQ | 来源:发表于2016-10-31 08:21 被阅读178次

在Linux系统上使用MySQL,MySQL是区分字母大小写的,例如建A表时表名是大写的A,修改A表时脚本里写的a,就会报错表a不存在。在MySQL中,数据库对应数据目录中的目录,数据库中的每个表至少对应数据库目录中的一个文件或多个文件,所以,是否区分大小写是其所在的操作系统决定的。在大多数基于Unix的系统中,MySQL是区分大小写的;而在Windows系统中,MySQL是不区分大小写的。

操作系统中提供了lower_case_table_names参数用于修改这种区分大小写的策略。默认情况下,Linux系统下
lower_case_table_names=0,Windows系统下lower_case_table_names=1,而MacOS下lower_case_table_names=2。0表示使用指定的大小写字母在硬盘上保存表名和数据库名,并且区分字母大小写;1表示表名在硬盘上以小写保存,MySQL将所有表名转换为小写在存储和查找表上,不区分字母大小写;2表示表名和数据库名在硬盘上使用指定的大小写字母进行保存,但MySQL将它们转换为小写在查找表上,不区分字母大小写。

如果想在Linux系统中修改lower_case_table_names的值,让其不区分字母大小写,Google出来的操作步骤大部分都是下面这种:
1.以root登录系统
2.cd /etc/mysql/
3.sudo vim my.cnf
4.在[mysqld]后添加添加lower_case_table_names=1
5.重新启动数据库

然而,有些时候会出现一些特殊情况,例如,打开my.cnf发现里面并没有[mysqld],而是如下的内容:
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
这时候,如果直接在里面添加lower_case_table_names=1,则会导致无法和MySQL建立连接的错误产生。正确做法如下:
1.以root登录系统
2.cd /etc/mysql/
3.sudo vim my.cnf
如果发现my.cnf中没有“[mysqld]”,只有如下内容:
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/
则,cd /etc/mysql/mysql.conf.d/
sudo vim mysqld.cnf
4.在[mysqld]后添加添加lower_case_table_names=1
5.重新启动数据库

相关文章

  • 细说MySQL区分字母大小写

    在Linux系统上使用MySQL,MySQL是区分字母大小写的,例如建A表时表名是大写的A,修改A表时脚本里写的a...

  • Mysql区分大小写(大小写敏感)配置

    Linux下 mysql 默认区分大小写 Windows下 mysql 默认不区分大小写 查看是否区分大小写 sh...

  • 2018-07-14-mysql-库的命名规则.

    mysql 库的命名规则 1、可以使用数字、字母、_,但是不能使用纯数字 2、库名是区分字母大小写的 3、库...

  • ★02.词法结构

    大小写 JavaScript区分大小写。 HTML不区分大小写。 命名规则 标识符必须以字母、_、$开头。

  • 3 基本概念

    语法 区分大小写建议:驼峰大小写 格式 标识符以**字母、''、'$' ** 开头的 *数字、字母、''、'$'...

  • 2018-07-14-mysql-命令规则.

    mysql 命令的使用规则 1、每条命令之后以;结尾 2、SQL命令不区分字母大小写 3、使用 \c 终止S...

  • MYSQL基础

    MYSQL语法 mysql大小写问题:1、数据库名与表名是严格区分大小写的;2、表的别名是严格区分大小写的;3、列...

  • MySQL基本语句汇总,MySQL的增删改查等(持续更新)

    注:MySQL不区分大小写 ,所有符号全是英文状态下的,不然会报错注:MySQL不区分大小写 ,所有符号全是英文状...

  • linux下mysql的大小写是否区分设置

    一、Linux中MySQL大小写详情: 1、数据库名严格区分大小写 2、表名严格区分大小写的 3、表的别名严格区分...

  • 大小写敏感的问题

    utf8_general_ci --不区分大小写 utf8_bin--区分大小写 二、 MySQL在windows...

网友评论

    本文标题:细说MySQL区分字母大小写

    本文链接:https://www.haomeiwen.com/subject/mgouuttx.html