重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 164|回复: 0
打印 上一主题 下一主题

[命令及语法] MySQL InnoDB的数据文件与重做日志文件

[复制链接]
跳转到指定楼层
楼主
发表于 2026-2-8 12:22:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MySQL与Oracle一样都是通过逻辑存储结构来管理物理存储结构,即管理硬盘上存储的各种文件。下面将详细介绍InnoDB存储引擎中的数据文件和重做日志文件。


一、数据文件
“.ibd”文件和ibdata文件 这两种文件都是存放Innodb数据的文件,之所以有两种文件来存放Innodb的数据(包括索引),是因为 Innodb 的数据存储方式能够通过配置来决定是使用共享表空间存放存储数据,还是独享表空间存放存储数据。
提示:当使用innodb存储引擎时,如果再配置文件中没有配置innodb_file_per_table,默认情况下,所有库中的所有使用innodb存储引擎的表示数据都存在‘ibdata1’这个文件中,表的数据信息和索引信息都存储在ibdata1中,但是如果开启了innodb_file_per_table参数,表示每个innodb表类型的表使用单独的表空间数据文件。


二、重做日志文件(redo log)

redo log是InnoDB存储引擎层生成的日志,主要为了保证数据的可靠性和事务的持久性。


每个redo log默认的大小是1G,由参数“innodb_log_file_size”参数决定。


mysql> show variables like "innodb_log_file_size";


# 输出的信息如下:
+----------------------+------------+
| Variable_name        | Value      |
+----------------------+------------+
| innodb_log_file_size | 1073741824 |
+----------------------+------------+
而redo log文件存放的路径由参数“innodb_log_group_home_dir”决定。


mysql> show variables like "innodb_log_group_home_dir";


# 输出的信息如下:
+---------------------------+-------+
| Variable_name             | Value |
+---------------------------+-------+
| innodb_log_group_home_dir | ./    |
+---------------------------+-------+
redo log文件与MySQL的数据文件默认存放在同一个目录下。通过下面方式可以进行查看:


[root@mysql11 data]# pwd
/usr/local/mysql/data
[root@mysql11 data]# ll ib_logfile*
-rw-r-----. 1 mysql mysql 1073741824 Feb 20 20:11 ib_logfile0
-rw-r-----. 1 mysql mysql 1073741824 Feb 19 11:22 ib_logfile1


# 这里可以看到有两个ib_logfile开头的文件,它们就是log group中的redo log file。
MySQL与Oracle一样都采用重做日志组的方式来管理redo log。一个组内由多个大小完全相同的redo log file组成,组内redo log file的数量由变量 “innodb_log_files_group”决定,默认值为2。


mysql> show variables like "innodb_log_files_in_group";


# 输出的信息如下:
+---------------------------+-------+
| Variable_name             | Value |
+---------------------------+-------+
| innodb_log_files_in_group | 2     |

+---------------------------+-------+

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-4-17 20:57 , Processed in 0.204087 second(s), 20 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表