当前位置: 首页 > article >正文

关于mysql的lower_case_table_names引发的思考

lower_case_table_names设置大小写敏感的三个值0、1、2的区别?

lower_case_table_names参数详解

1.参数说明:

  • lower_case_table_names= 0 表名 存储为给定的大小和比较是区分大小写的
  • lower_case_table_names = 1 表名 存储在磁盘是小写的 ,但是 比较的时候是不区分大小写
  • lower_case_table_names= 2 表名 存储为给定的大小写 但是 比较的时候是小写的

unix,linux下lower_case_table_names默认值为 0 .Windows下默认值是 1 .Mac OS X下默认值是 2

2.查看方法:

# 进入mysql命令行 执行以下任一语句查看:show variables like 'lower_case_table_names';select @@lower_case_table_names;

3.更改方法:

更改数据库参数文件 my.cnf

在mysqld下 添加或修改 lower_case_table_names = 1

之后重启数据库

4.现实情况修改 注意事项:

因目前MySQL安装在 Linux 系统上较多 初始化时采取了默认的lower_case_table_names值 即区分大小写,后续可能会造成同一实例大小写库表都存在的情况,调用时还要注意大小写。

这时 更改步骤如下:

1.核实实例中是否存在大写的库及表

2.将大写的库名及表名改为小写

更改库名可参考 : MySQL数据库改名的三种方法

更改表名:rename table TEST_TB to test_tb;

3.设置lower_case_table_names = 1

4.重启数据库


http://www.kler.cn/a/159984.html

相关文章:

  • 探索Python的HTTP利器:Requests库的神秘面纱
  • ubuntu20.04 解决Pytorch默认安装CPU版本的问题
  • quartz
  • Vue 的生命周期函数 和 Vuex
  • 《新智慧》期刊的征稿范围主要包括哪些方面?
  • 树形dp总结
  • C语言词法陷阱
  • 《C++ primer》 anki学习卡片txt输出101张,更新至第2章,截止2023年12月6日
  • 计算机操作系统3
  • C语言猜数字小游戏
  • java单人聊天
  • 模式识别与机器学习(七):集成学习
  • Python高级数据结构——并查集(Disjoint Set)
  • Multidimensional Scaling(MDS多维缩放)算法及其应用
  • docker安装mysql8
  • Python 模块的使用方法
  • 万宾科技监测设备,可燃气体监测仪特点一览
  • PostgreSQL有意思的现象:支持不带列的表
  • Java 数据结构篇-用链表、数组实现队列(数组实现:循环队列)
  • 【动手学深度学习】(六)权重衰退
  • 【Unity入门】声音组件AudioSource简介及实现声音的近大远小
  • 生成对抗网络——研讨会
  • SQL练习
  • QT-在ui界面中给QWidget增加Layout布局的两种方法
  • Tensorflow.js 入门学习指南
  • java内部类详解