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

MySQL基础(二十)MySQL的数据目录

1. MySQL8的主要目录结构

find / -name mysql
1.1 数据库文件的存放路径
show variables like 'datadir'; # /var/lib/mysql/
1.2 相关命令目录

相关命令目录:/usr/bin 和/usr/sbin。

1.3 配置文件目录

配置文件目录:/usr/share/mysql-8.0(命令及配置文件),/etc/mysql(如my.cnf)

2. 数据库和文件系统的关系

2.1 表在文件系统中的表示
2.3.1 InnoDB存储引擎模式

1. 表结构

为了保存表结构,InnoDB数据目录下对应的数据库子目录下创建了一个专门用于描述表结构的文件

表名.frm

2. 表中数据和索引

① 系统表空间(system tablespace)

默认情况下,InnoDB会在数据目录下创建一个名为ibdata1、大小为12M自拓展文件,这个文件就是对应的系统表空间在文件系统上的表示。

② 独立表空间(file-per-table tablespace)

在MySQL5.6.6以及之后的版本中,InnoDB并不会默认的把各个表的数据存储到系统表空间中,而是为每一个表建立一个独立表空间,也就是说我们创建了多少个表,就有多少个独立表空间。使用独立表空间来存储表数据的话,会在该表所属数据库对应的子目录下创建一个表示该独立表空间的文件,文件名和表名相同。

表名.ibd

MySQL8.0中不再单独提供表名.frm,而是合并在表名.ibd文件中。

③ 系统表空间与独立表空间的设置

我们可以自己指定使用系统表空间还是独立表空间来存储数据,这个功能由启动参数innodb_file_per_table控制

[server] 
innodb_file_per_table=0 # 0:代表使用系统表空间; 1:代表使用独立表空间

④ 其他类型的表空间

随着MySQL的发展,除了上述两种老牌表空间之外,现在还新提出了一些不同类型的表空间,比如通用表空间(general tablespace)、临时表空间(temporary tablespace)等。

2.3.2 MyISAM存储引擎模式

1. 表结构

在存储表结构方面, MyISAM 和 InnoDB 一样,也是在数据目录下对应的数据库子目录下创建了一个专门用于描述表结构的文件

表名.frm

2. 表中数据和索引

在MyISAM中的索引全部都是二级索引,该存储引擎的数据和索引是分开存放的。所以在文件系统中也是使用不同的文件来存储数据文件和索引文件,同时表数据都存放在对应的数据库子目录下。

test.frm 存储表结构 #MySQL8.0 改为了 b.xxx.sdi
test.MYD 存储数据 (MYData) 
test.MYI 存储索引 (MYIndex
http://www.lryc.cn/news/66765.html

相关文章:

  • 低代码行业未来如何?大家都真的看好低代码开发吗?
  • mac m2芯片 安装 brew 和cocoapods
  • SingleR --细胞注释
  • 【结构与算法】—— 游戏概率常用算法整理 | 游戏中的常见概率设计分析
  • WebRTC系列-适配GPUImage及其他视频处理改造
  • day43—选择题
  • <<和>>操作符、取地址重载、const关键字
  • 数学模型,如何计算概率?
  • 【Ehcache技术专题】「入门到精通」带你一起从零基础进行分析和开发Ehcache框架的实战指南(Spring整合ehcache)
  • 合肥市2023年度高校毕业生“双千培养工程”培训项目学员招募公告
  • 重写Properties类,实现对properties文件的有序读写,数据追加,解决中文乱码
  • 态势感知与信质、信量
  • 20230508----重返学习-call()与bind()重写-JS中数据类型检测汇总-装箱与拆箱-类的多种继承方案
  • Node.js对ES6 及更高版本的支持
  • 【华为OD机试2023】工作安排 100% C++ Java Python
  • 面试题Spring - 关于Spring的25个经典问题和答案
  • C++学习day--10 条件判断、分支
  • 和月薪5W的聊过后,才发现自己一直在打杂···
  • SSM框架学习-AOP通知类型
  • 微信小程序原生开发功能合集十四:登录健权及注册功能实现
  • 【Java零基础入门篇】第 ⑤ 期 - 抽象类和接口(二)
  • Halcon 集合运算(差集difference、交集intersection、并集union2、打散connection与 合集 union1)
  • Allegro约束规则设计
  • PyQt5桌面应用开发(11):摸鱼也要讲基本法之桌面精灵
  • Talk预告 | 大连理工大学IIAU Lab在读博士生严彬:走向通用实例感知
  • 2023-05-04 LeetCode每日一题(摘水果)
  • [工具]Pytorch-lightning的使用
  • 互联网摸鱼日报(2023-05-09)
  • MySQL常见的存储引擎
  • 迅为i.MX6ULL开发板生成 KEY 文件,并安装