我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql运维中lower_case_table_names是什么意思

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql运维中lower_case_table_names是什么意思

这篇文章主要介绍了mysql运维中lower_case_table_names是什么意思,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

1 简介
   在MySQL中,数据库对应数据目录中的目录。数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于存储引擎)。因此,所使用操作系统的大小写敏感性决定了数据库名和表名的大小写敏感性。
   在大多数Unix中数据库名和表名对大小写敏感,而在Windows中对大小写不敏感。一个显著的例外情况是Mac OS X,它基于Unix但使用默认文件系统类型(HFS+),对大小写不敏感。然而,Mac OS X也支持UFS卷,该卷对大小写敏感,就像Unix一样。
   变量lower_case_file_system说明是否数据目录所在的文件系统对文件名的大小写敏感。ON说明对文件名的大小写不敏感,OFF表示敏感。

例如在windows下查看:

mysql运维中lower_case_table_names是什么意思

说明windows系统对大小写不敏感,mysql也默认设置为对大小写不敏感。

2 大小写区分规则
   linux下:
   数据库名与表名是严格区分大小写的;
   表的别名是严格区分大小写的;
   列名与列的别名在所有的情况下均是忽略大小写的;
   变量名也是严格区分大小写的;
   windows下:
   都不区分大小写
   Mac OS下(非UFS卷):
   都不区分大小写

3 参数说明(lower_case_table_names)
   unix下lower_case_table_names默认值为 0 .Windows下默认值是 1 .Mac OS X下默认值是 2 .

参数值

解释
0使用CREATE TABLE或CREATE DATABASE语句指定的大小写字母在硬盘上保存表名和数据库名。名称比较对大小写敏感。在大小写不敏感的操作系统如windows或Mac OS x上我们不能将该参数设为0,如果在大小写不敏感的文件系统上将--lowercase-table-names强制设为0,并且使用不同的大小写访问MyISAM表名,可能会导致索引破坏。
1表名在硬盘上以小写保存,名称比较对大小写不敏感。MySQL将所有表名转换为小写在存储和查找表上。该行为也适合数据库名和表的别名。该值为Windows的默认值。
2表名和数据库名在硬盘上使用CREATE TABLE或CREATE DATABASE语句指定的大小写字母进行保存,但MySQL将它们转换为小写在查找表上。名称比较对大小写不敏感,即按照大小写来保存,按照小写来比较。注释:只在对大小写不敏感的文件系统上适用! innodb表名用小写保存。

4 由大小写敏感转换为不敏感方法
   如果原来所建立库及表都是对大小写敏感的,想要转换为对大小写不敏感,主要需要进行如下3步:
   1.将数据库数据通过mysqldump导出。
   2.在my.cnf中更改lower_case_tables_name = 1,并重启mysql数据库。
   3.将导出的数据导入mysql数据库。

5 注意事项
   为了避免大小写引发的问题,一种推荐的命名规则是:在定义数据库、表、列的时候全部采用小写字母加下划线的方式,不使用任何大写字母
   在任何系统中可以使用lower_case_tables_name=1。使用该选项的不利之处是当使用SHOW TABLES或SHOW DATABASES时,看不出名字原来是用大写还是小写。
   请注意在Unix中如果以前lower_case_tables_name = 0将lower_case_tables_name设置为1之前,重启mysqld之前,必须先将旧的数据库名和表名转换为小写。

感谢你能够认真阅读完这篇文章,希望小编分享的“mysql运维中lower_case_table_names是什么意思”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql运维中lower_case_table_names是什么意思

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql中*是什么意思

在 mysql 中,* 的含义MySQL 中的星号 (*) 代表“所有”。在不同上下文中,它具有不同的用法。1. 选择所有列使用 * 可以选择表中的所有列:SELECT * FROM table_
mysql中*是什么意思
2024-04-26

mysql中%是什么意思

mysql 中的百分号 % 是一个通配符,可匹配任意字符序列。它可用于:1. 字符串匹配(如:like '%string%'); 2. 范围查询(如:between '%start%' and '%end%'); 3. 正则表达式匹配(如:
mysql中%是什么意思
2024-04-26

mysql中@是什么意思

mysql 中 @ 符号有两种用途:指定变量(@变量名)和连接表或列名(@表名或@列名),表示数据库中一个临时或派生表的别名。MySQL 中 @ 符号的含义@ 符号在 MySQL 中有两种主要用途:1. 指定变量@ 符号用于指定变量,
mysql中@是什么意思
2024-04-26

mysql中的%是什么意思

mysql 中的 % 通配符用于在 like 操作符中进行模式匹配,表示零个或多个字符。它可用于查找以给定模式开头的所有字符串或包含给定模式的字符串,还可以可选地查找以给定模式结尾的字符串。除了 % 之外,mysql 还提供了其他通配符,包
mysql中的%是什么意思
2024-04-26

mysql中field是什么意思

mysql 中 field 关键字用于在表中查找列的序号,通过指定表达式和要比较的列名,即可返回匹配列的索引,否则返回 0 或 null,常用于动态 sql 和确定列顺序。MySQL 中的 FIELDFIELD 是 MySQL 中的一个关
mysql中field是什么意思
2024-04-29

mysql中as是什么意思

mysql 中 as 用于创建表或列别名,以简化查询中表或列的引用:表别名:在一个查询中使用多个表时,指定表别名,以便引用表中的列更方便。列别名:指定列别名,以便在查询结果中使用不同的名称或别名。MySQL 中 AS 的含义AS 在 My
mysql中as是什么意思
2024-04-29

mysql中schema是什么意思

mysql 中的 schema 是用于组织和管理数据库对象(如表、视图)的逻辑结构,以确保数据一致性、数据访问控制和简化数据库设计。schema 的功能包括:1. 数据组织;2. 数据一致性;3. 数据访问控制;4. 数据库设计。MySQL
mysql中schema是什么意思
2024-05-01

mysql中value是什么意思

mysql 中的 value 关键字:1. 获取列值:select value from table_name where column_name = value;2. 设置列值:update table_name set column_n
mysql中value是什么意思
2024-05-01

MySQL中的/*是什么意思

在MySQL中,/ /用于多行注释。它可以在SQL语句中的任何位置使用,用于注释掉一段代码或提供对代码的解释。多行注释可以跨越多个行,并且可以包含任何文本,而不会被MySQL解释为有效的SQL语句。这在调试代码或进行文档编写时非常有用。例如
2023-10-20

mysql中groupby是什么意思

答案: group by 是 mysql 中用于对数据分组和聚合的 sql 语句。详细描述:将具有相同分组依据值的记录分组在一起。对每个组应用聚合函数(如 sum、count、avg)生成汇总结果。优点包括汇总数据、识别模式、消除重复记录和
mysql中groupby是什么意思
2024-04-26

mysql中asc是什么意思

asc 在 mysql 中表示升序排列,适用于数字和字符串类型。在 select 语句中使用 asc 关键字后跟列名,即可对数据进行升序排序,与 desc 相反。asc 是默认排序顺序,如果未指定,数据将按升序排列。ASC 在 MySQL
mysql中asc是什么意思
2024-04-29

mysql中nvl是什么意思

在 mysql 中,nvl 函数用于替换空值,语法为:nvl(expression, replacement)。它根据规则工作:如果 expression 不为空,则返回 expression;如果 expression 为空,则返回 re
mysql中nvl是什么意思
2024-05-02

mysql中user是什么意思

mysql 中的 user 是一个数据库对象,它表示可以与数据库交互的实体,包含用户名、密码、权限和主机信息。通过 create user 可创建用户,grant 授予权限,revoke 撤销权限。管理 user 对于数据库安全至关重要,因
mysql中user是什么意思
2024-05-01

mysql中sc是什么意思

在 mysql 中,"sc" 代表 second contract,它是一种事务隔离级别。second contract 隔离级别保证了读已提交、不可重复读取和幻读属性,可防止脏读和不可重复读取,同时允许幻读。它通常用于需要高度一致性和并发
mysql中sc是什么意思
2024-05-01

mysql中server_id是什么意思

MySQL中的server_id是用于标识唯一服务器的一个设置选项,每个MySQL服务器都需要具有唯一的server_id值,以确保在复制和集群环境中正确地识别和处理数据,主要用于两个功能:1、主从复制,用于标识主服务器和从服务器;2、My
2023-07-28

MySQL中的/*是什么意思?

这是一种评论。 是评论的结束。让我们实现并展示如何创建评论mysql> MySQL 将忽略上面的注释。让我们看一个例子。在这里,我们用 /*
2023-10-22

mysql中decimal是什么意思

mysql 中的 decimal 数据类型用于存储精确的带小数点的十进制数字。其特点包括:精度:由位数和固定小数位数指定。范围:允许存储大或小十进制值,取决于精度。精度保证:不像浮点类型,decimal 保证存储确切的值,避免舍入误差。语法
mysql中decimal是什么意思
2024-05-01

编程热搜

目录