mysql 创建大写字母的表名失败

1、现象描述:

在 linux 操作系统下 mysql 创建新的 TABLE_NAME 时,大写的表名无法创建成功,mysql 数据库自动将 TABLE_NAME 转换为小写

2、故障分析:

Linux 环境下 Mysql 数据库名与表名是严格区分大小写的(系统库 information_schema 及其之下的表除外 ),该限制取决于 mysql 配置文件参数 lower_case_table_names,而默认该参数是未配置的 。

3、处理办法

编辑 mysql 的配置文件 /etc/my.cnf 配置文件,在 [mysqld] 下面添加一行配置,lower_case_table_names=0,并重启 mysql 服务即可

说明:lower_case_table_names 是 mysql 设置大小写是否敏感的一个参数

|-------|--------------------------------|--------------------|
| 1 | 表名会被强制转换为小写进行存储,而且在查询时不区分大小写。 | 所有系统(推荐使用) |
| 0 | 表名会按照创建时的大小写原样存储,查询时必须严格匹配大小写。 | Linux/Unix(默认值) |
| 2 | 表名按创建时的大小写存储,但在比较时不区分大小写。 | Windows/macOS(默认值) |

相关推荐
JosieBook2 分钟前
【数据库】MySQL 数据库创建存储过程及使用场景详解
数据库·mysql
处女座_三月11 分钟前
改 TDengine 数据库的时间写入限制
数据库·sql·mysql
酷ku的森18 分钟前
Redis中的hash数据类型
数据库·redis·哈希算法
Arva .30 分钟前
Redis
数据库·redis·缓存
DemonAvenger31 分钟前
MySQL与应用程序的高效交互模式:从基础到实战的最佳实践
数据库·mysql·性能优化
博一波1 小时前
Redis 集群:连锁银行的 “多网点智能协作系统”
数据库·redis·缓存
HashData酷克数据1 小时前
官宣:Apache Cloudberry (Incubating) 2.0.0 发布!
数据库·开源·apache·cloudberry
秋难降1 小时前
SQL 索引突然 “罢工”?快来看看为什么
数据库·后端·sql
TDengine (老段)1 小时前
TDengine 时间函数 TODAY() 用户手册
大数据·数据库·物联网·oracle·时序数据库·tdengine·涛思数据
码界奇点2 小时前
KingbaseES一体化架构与多层防护体系如何保障企业级数据库的持续稳定与弹性扩展
数据库·架构·可用性测试