Mariadb数据库——设置Mariadb大小写不敏感
背景
日常我们开发时,我们会遇到各种各样的奇奇怪怪的问题(踩坑o(╯□╰)o),这个常见问题系列就是我日常遇到的一些问题的记录文章系列,这里整理汇总后分享给大家,让其还在深坑中的小伙伴有绳索能爬出来。
同时在这里也欢迎大家把自己遇到的问题留言或私信给我,我看看其能否给大家解决。
开发环境
- 系统:Ubuntu
- 数据库:Mariadb
内容
一、忽略大小写配置
在我们日常进行使用Mariadb时通常在程序里面会忽略掉大小写的区别,而Maradb默认安装完成后是区分大小写的,这时如果我们进行创建了数据库与表结构,那么在使用时就需要和其名称、大小写一致方可进行操作。而修改这类配置的操作也很简单,只需要打开/etc/my.cnf中增加如下配置即可:
[mysqld]
lower_case_table_names = 1
保存文件后重启一下服务,这样我们就可以忽略掉大小写。
sudo service mariadb restart
注:如果在修改之前我们已经创建了数据库,这时可能就需要提前将其数据库备份出来,待修改完成后再进行重新创建和导入之前的数据,因为其在默认0时,mariadb的处理机制会严格按照大小写进行进行创建和记录相关,而修改该参数后,所有操作指令都会被转换为小写状态,即我们大写的SQL也会被转换为小写来进行响应,这时就会出现问题,之前大小写创建的数据库将不会被找到。
二、参数值作用
另外该参数具有以下三种值,大家可以根据自己的需要进行修改使用:
- lower_case_table_names = 0 存储使用传输过来的大小写格式,读取时依旧严格遵循
- lower_case_table_names = 1 存储使用自动转换后的小写格式,读取比较时不区分大小写。
- lower_case_table_names = 2 存储使用给定的大小写,读取比较时自动转换为小写。
备注:该参数的修改都需要进行重启数据库后才能生效。
本文声明:
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。
所有评论(0)