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(默认值) |

相关推荐
IvorySQL8 小时前
PostgreSQL 日报|修复截断 zstd 备份检测(10 月 9 日)
数据库·postgresql
刘胡子大叔9 小时前
SQL 脚本的导入顺序
数据库·sql
代码什么用9 小时前
Spring对IoC的实现
数据库·spring
hz5678911 小时前
涉密视频会议设备配置指南:终端、音视频采集与配套设施选型
服务器·网络·数据库·安全·实时音视频·信息与通信·智能硬件
广州浮点FLOATLIC11 小时前
许可证服务器迁移后软件打不开:研发 IT 怎样定位连接问题
linux·服务器·数据库
程序员Sunday11 小时前
MySQL 为什么使用 B+ 树索引?把范围查询、回表和覆盖索引连起来
数据库·mysql
半杯咖啡半行码12 小时前
Qt开发实战:数据库、MV 模式、QProcess与串口通信全攻略
数据库·qt
Yyyyyy~12 小时前
[ Mysql ] 库的操作
mysql
小米里的大麦12 小时前
16 MySQL 事务
数据库·mysql
西柚小萌新12 小时前
【LLM&&AI应用开发 八股文】--4.3.Agent智能体(下)
java·开发语言·数据库