mysql redo文件_MySQL数据库日志文件(redo与undo)

+++++++++++++++++++++++++++++++++++++++++++

标题:MySQL数据库日志文件

时间:2019年2月25日

内容:MySQL数据库日志文件(redo日志和undo日志文件)

重点:MySQL数据库日志文件(redo日志和undo日志文件)

+++++++++++++++++++++++++++++++++++++++++++

1. redo日志文件

1.1 redo日志写入过程

数据库产生redo日志信息后;将redo日志信息缓存到redo日志缓冲区中;持久化到redo日志文件中(每个redo日志组中可以包含多个日志文件,多个文件之间采取循环覆盖写入的方式)。

1.2 redo日志缓冲区

1.2.1 相关参数

mysql> show variables like 'innodb_log_buffer%';

67a5a903417cc33f4ee8b692ef89c285.png

1.2.2 触发条件

当事务提交时会对redo log buffer中的数据进行持久化。

master thread每秒会对redo log buffer中的数据进行持久化。

当缓存剩余空间小于全部空间的一半时redo log buffer中的数据进行持久化。

1.3 redo日志相关知识

镜像组:MySQL5.1以上版本已经不支持redo镜像组,也就是说只能存在一组重做日志。

日志作用:在数据库重启时可以利用redo日志进行实例恢复。

日志存储:redo日志是以块的形式存储的,每个块大小为512字节,由日志头(12)、日志内容(492)和日志尾(8)。

日志文件数:MySQLredo日志文件数量默认为2个,可以通过参数innodb_log_files_in_group进行调整。

日志文件名称:ib_logfile0、ib_logfile1,文件存放在innodb_log_group_home_dir。

日志存储内容:记录数据库中的数据也发生的变化。

日志写入方式:日志组中的多个日志文件之间采取循环覆盖式写入。

1.4 redo日志文件参数

innodb_log_buffer_size//设置缓存空间的大小

innodb_log_file_size//设置redo日志文件的大小

innodb_log_files_in_group//存在连个日志组

innodb_log_group_home_dir//日志文件存放位置

2. undo日志文件

2.1 undo日志的作用

保存事务发生前的数据版本,实现数据回滚。

实现多版本并发控制,即非锁定读。

2.2 undo产生与释放

事务发生前将当前的数据版本形成undo日志,同时会产生相关redo日志,保证undo日志的可靠性。

事务提交后由purge线程判断其他事务是否在使用undo在上一个事务之前的版本信息,从而确定是否可以清理undo日志空间。

2.3 undo日志文件

MySQL5.6版本及以前的数据库中undo段位于共享表空间(ibdata)中。

MySQL5.7版本及以后的数据库中可以为undo配置独立表空间。

undo独立表空间相关参数如下:

mysql> show variables like '%undo%';

57f08d0cdecbdb0f5c27bab41c67a7d0.png

利用mysql数据库日志文件获得webshell

查看配置 show variables like '%general%'; 开启日志功能 set GLOBAL general_log='ON'; 设置日志存储路径 SET GLOBAL genera ...

mysql基础---日志文件

一 基本日志文件 MYSQL有不同类型的日志文件(各自存储了不同类型的日志),从它们当中可以查询到MYSQL里都做了些什么,对于MYSQL的管理工作,这些日志文件是不可缺少的. 1.错误日志(The ...

mysql 的日志文件

mysql的日志文件 日志文件大致分为  error log, binary log, query log, slow query log, innodb redo log ;如图: 1.error ...

MySQL各类日志文件相关变量介绍

文章转自:http://www.ywnds.com/?p=3721 MySQL各类日志文件相关变量介绍 查询所有日志的变量   1 mysql> show global variables li ...

Mysql数据库日志类型查询与配置详解

在mysql中日志分为很多种,下面小编来给大家介绍Mysql数据库日志类型查询与使用,希望对各位同学会有所帮助 mysql常见的日志类型有五种:错误日志.二进制日志.查询日志.慢查日志和中继日志. 一 ...

SOME:收缩数据库日志文件,查看表数据量和空间占用,查看表结构索引修改时间

---收缩数据库日志文件 USE [master]ALTER DATABASE yourdatabasename SET RECOVERY SIMPLE WITH NO_WAITALTER DATAB ...

收缩SQL数据库日志文件

收缩SQL数据库日志文件 介绍具体的操作方法前,先说下我操作的实际环境和当时的状况.我的服务器是windows server 2008 R2 64位英文版,数据库是SQL server 2008英文版 ...

[转载]mysql慢日志文件分析处理

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值