Linux系统下 MySQL 设置不区分大小写

lower_case_table_names

参数详解:

lower_case_table_names=1

其中0:区分大小写,1:不区分大小写

查询当前设置:

mysql> show variables like '%lower%' ;
+ ------------------------+-------+
| Variable_name          | Value |
+ ------------------------+-------+
| lower_case_file_system | OFF   |
| lower_case_table_names | 1     |
+ ------------------------+-------+
2 rows in set (0.01 sec)

lower_case_file_system
表示当前系统文件是否大小写敏感,只读参数,无法修改。
ON  大小写不敏感 
OFF 大小写敏感 
lower_case_table_names
表示表名是否大小写敏感,可以修改。
lower_case_table_names = 0时,mysql会根据表名直接操作,大小写敏感。 
lower_case_table_names = 1时,mysql会先把表名转为小写,再执行操作。

网上大多数解决方案是:

1、使用root权限登录,修改配置文件 /etc/my.cnf
2、在[mysqld]节点下,加入一行: lower_case_table_names=1

3、重启MySQL : service mysqld.server restart

在部分版本的MySQL下,如果之前有大写的表,修改参数后改表会提示不存在,而且也无法修改,应用程序就操作不了。

问题剖析:

如果在lower_case_table_names=0情况下已经导入了大量的表和数据,表名有大写,有小写,此时再换成lower_case_table_names=1会出错。

解决办法:在lower_case_table_names=0时,将表名全部改成小写的;如果有数据库名称中存在大写字母,也需同时改名,改名方法为新建一个小写的数据库, 再改表名。(最方便的是直接使用MySQL界面客户端修改)

全部改名之后,再设置lower_case_table_names=1,重启MySQL。

更改后查询确认:

mysql> show variables like '%lower%' ;
+ ------------------------+-------+
| Variable_name          | Value |
+ ------------------------+-------+
| lower_case_file_system | ON   |
| lower_case_table_names | 0     |
+ ------------------------+-------+

重启测试

MySQL 设置不区分大小写相关推荐

  1. mysql设置不区分大小写

    mysql设置不区分大小写 1.windows下 到安装mysql的目录,修改my.ini文件 在文件最后一行加上下面一句话 lower_case_table_names=1 lower_case_t ...

  2. mysql设置字段区分大小写

    mysql设置字段区分大小写 alter table t_entrust_direction modify c_entrust_direction varchar(4) binary;//加上bina ...

  3. mysql设置常用——修改大小写、设置sql_mode不支持功能、

    一,MySQL 设置不区分大小写. ***:错误原因:后台java代码连接数据库mysql 报错 java运行报错日志:### Error querying database. Cause: com. ...

  4. mysql的collation区分大小写设置

    mysql的collation区分大小写设置 mysql数据库在做查询时候,有时候是英文字母大小写敏感的,有时候又不是的,主要是由于mysql的字符校验规则的设置.通常默认是不支持的大小写字母敏感的, ...

  5. mysql select 区分大小写,MySql查询不区分大小写解决方案(两种)

    当我们输入不管大小写都能查询到数据,例如:输入 aaa 或者aaA ,AAA都能查询同样的结果,说明查询条件对大小写不敏感. 解决方案一: 于是怀疑Mysql的问题.做个实验:直接使用客户端用sql查 ...

  6. mysql 设置client char_mysql编码问题:show variables like “%char%”

    mysql编码设置 mysql> SHOW VARIABLES LIKE 'character_set_%'; +--------------------------+------------- ...

  7. 使mysql查询条件区分大小写 数据库搜索中大小写敏感性

    在默认情况下,mysql搜索不区分大小写(但某些字符集始终区分大小写,如czech).这意味着,如果你使用col_name LIKE 'a%'进行搜索,你将获得以A或a开始的所有列. 如果打算使搜索区 ...

  8. mysql 密码 特殊符号_MySQL数据库之mysql设置复杂密码中含$特殊符号导致无法命令行登录...

    本文主要向大家介绍了MySQL数据库之mysql设置复杂密码中含$特殊符号导致无法命令行登录 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 安全考虑 在设置MYSQL 密码时候 ...

  9. mysql设置text字段为not null,并且没有默认值,插入报错:doesn't have a default value

    一.问题描述 在往数据库写入数据的时候,报错: '字段名' doesn't have a default value 本来这个错误是经常见到的,无非就是字段没有设置默认值造成的.奇怪的是,我这边报错的 ...

最新文章

  1. NeurIPS 2020 大变动,领域主席可拒稿20%,作者即评审,布局远程会议!
  2. 【XXX贷】2014年10月XX日发标预告
  3. 非Java程序员转行Java-day01-入门基础
  4. 存储基础知识 - 磁盘寻址(CHS寻址方式、LBA寻址方式)
  5. android 隐藏键盘时ui延迟恢复,android 软键盘的显示与隐藏问题的研究
  6. webpack进阶之插件篇
  7. A站有一个页面需要PV统计 A站读写该数据 B站读该数据 需要数据同步
  8. OpenShift 4 - 解决 OpenShift 中 elasticsearch 环境的 Log4j 漏洞
  9. Find the longest route with the smallest starting point
  10. 受 SQLite 多年青睐,C 语言到底好在哪儿? 1
  11. Mysql + keepalived 实现双主热备读写分离
  12. C# 文件上传 默认最大为4M的解决方法
  13. 一款非常好用的日期插件(强烈推荐)
  14. 计算机会计处理流程,会计电算化账务系统期末处理流程
  15. 板材品牌之生态板吊顶好还是桑拿板好
  16. 灯具如何利用网络打造品牌品牌实现销售增长?
  17. 三款正射图合并软件性能对比
  18. Thread out-of-synch 错误
  19. viewpager 与 pageradapter
  20. 先验分布/后验分布/似然估计/贝叶斯公式

热门文章

  1. 使用全包通票畅游伦敦景点全攻略来啦~~
  2. 【计算方法】不动点迭代法(非线性方程的求解)
  3. 浅谈linux - 描述硬件的文件设备树
  4. Ubuntu16.04 Remmina远程复制粘贴
  5. 期望最大化算法(EM)简介
  6. 十年C++企业级架构师分享:C++的核心知识点有哪些?
  7. 【IoT】物联网NB-IoT之移动oneNET平台硬件接入
  8. 从Linux开源说起
  9. sql limit的用法
  10. 【阅读笔记】《拖延心理学》(简・博克)