MySQL5.7数据目录结构

以CentOS7为例,数据目录为/var/lib/mysql/,其内容如下:

sql 复制代码
[root@scentos szc]# ll /var/lib/mysql/
total 122952
-rw-r----- 1 mysql mysql       56 Jan 15 16:02 auto.cnf
-rw------- 1 mysql mysql     1680 Jan 15 16:02 ca-key.pem
-rw-r--r-- 1 mysql mysql     1112 Jan 15 16:02 ca.pem
-rw-r--r-- 1 mysql mysql     1112 Jan 15 16:02 client-cert.pem
-rw------- 1 mysql mysql     1676 Jan 15 16:02 client-key.pem
-rw-r----- 1 mysql mysql      289 Jan 15 16:48 ib_buffer_pool
-rw-r----- 1 mysql mysql 12582912 Jan 15 17:31 ibdata1
-rw-r----- 1 mysql mysql 50331648 Jan 15 17:31 ib_logfile0
-rw-r----- 1 mysql mysql 50331648 Jan 15 16:02 ib_logfile1
-rw-r----- 1 mysql mysql 12582912 Jan 15 17:54 ibtmp1
drwxr-x--- 2 mysql mysql     4096 Jan 15 16:02 mysql
srwxrwxrwx 1 mysql mysql        0 Jan 15 16:51 mysql.sock
-rw------- 1 mysql mysql        6 Jan 15 16:51 mysql.sock.lock
drwxr-x--- 2 mysql mysql     8192 Jan 15 16:02 performance_schema
-rw------- 1 mysql mysql     1676 Jan 15 16:02 private_key.pem
-rw-r--r-- 1 mysql mysql      452 Jan 15 16:02 public_key.pem
-rw-r--r-- 1 mysql mysql     1112 Jan 15 16:02 server-cert.pem
-rw------- 1 mysql mysql     1676 Jan 15 16:02 server-key.pem
drwxr-x--- 2 mysql mysql     8192 Jan 15 16:02 sys
drwxr-x--- 2 mysql mysql      207 Jan 15 19:15 test

其中mysqlsys等为数据库,即一个数据库对应的一个目录。

  • ibdata1存放的是InnoDB的元数据、变更缓冲区、双写缓冲区和撤销日志。
  • ib_logfile0ib_logfile1存放普通日志。
  • ib_buffer_pool存放缓存池信息。

test数据库为例,其中内容如下:

sql 复制代码
[root@scentos szc]# ll /var/lib/mysql/test/
total 260
-rw-r----- 1 mysql mysql    61 Jan 15 16:53 db.opt
-rw-r----- 1 mysql mysql  8650 Jan 15 17:28 emp_test.frm
-rw-r----- 1 mysql mysql 98304 Jan 15 17:30 emp_test.ibd
-rw-r----- 1 mysql mysql  8560 Jan 15 16:54 test1.frm
-rw-r----- 1 mysql mysql 98304 Jan 15 16:55 test1.ibd
-rw-r----- 1 mysql mysql   278 Jan 15 19:27 test1.TRG
-rw-r----- 1 mysql mysql  8586 Jan 15 19:10 test_myisam.frm
-rw-r----- 1 mysql mysql     0 Jan 15 19:10 test_myisam.MYD
-rw-r----- 1 mysql mysql  1024 Jan 15 19:10 test_myisam.MYI
-rw-r----- 1 mysql mysql   285 Jan 15 19:28 test_myisam.TRG
-rw-r----- 1 mysql mysql    43 Jan 15 19:28 test_trigger_on_myisam.TRN
-rw-r----- 1 mysql mysql    37 Jan 15 19:27 test_trigger_on_test1.TRN
-rw-r----- 1 mysql mysql   497 Jan 15 19:15 test_view_2.frm
-rw-r----- 1 mysql mysql   399 Jan 15 19:15 test_view.frm

db.opt存放数据库的配置信息。

对于一张InnoDB数据表而言:

  • frm文件存放表结构信息。
    • 若采用默认的独立表空间结构,则使用ibd文件存放表数据信息;
    • 否则就是系统表空间结构,使用ibdata文件存放表数据。
  • TRG文件存放触发器信息;

对于一张myisam表而言:

  • frm文件存放表结构信息;
  • MYD文件存放表数据信息;
  • MYI文件存放表索引信息;
  • TRG文件存放触发器信息;

对于视图而言:仅有frm文件,存放视图结构信息。

对于触发器而言:仅有TRN保存其对应的触发器信息。

相关推荐
JZC_xiaozhong4 小时前
电商ERP如何同步订单数据到MySQL?集成方案解析
数据库·mysql·数据分析·etl工程师·嵌入式实时数据库·电商erp集成·数据集成与应用集成
-大头.6 小时前
Docker实战:构建高性能MySQL主从复制集群(读写分离)
mysql·docker·容器
burning_maple6 小时前
mysql数据库笔记
数据库·笔记·mysql
周某人姓周7 小时前
sqlilabs靶场通关详解
数据库·mysql·安全·网络安全
霖霖总总8 小时前
[小技巧41]InnoDB 如何判断一行数据是否可见?MVCC 可见性机制深度解析
数据库·mysql
Mr.徐大人ゞ10 小时前
生产可用的 MySQL8 一键安装脚本和一键巡检脚本
mysql
星梦清河10 小时前
MySQL—分组函数
数据库·mysql
霖霖总总11 小时前
[小技巧33]MySQL 事务持久化的一致性保障:binlog 与 redo log 的两阶段提交机制解析
数据库·mysql
消失的旧时光-194314 小时前
第五课:数据库不是存数据那么简单 —— MySQL 与索引的后端视角
数据库·mysql
nice_lcj52014 小时前
MySQL中GROUP_CONCAT函数详解 | 按日期分组拼接销售产品经典案例
数据库·mysql