之前一直弄不清楚mysql里面bin log和innodb log文件的区别,在脑子里面一直有个疑问binlog日志文件已经可以用来进行数据库的日志

前言:之前一直弄不清楚mysql里面bin log和innodb log文件的区别,在脑子里面一直有个疑问binlog日志文件已经可以用来进行数据库的日志备份恢复了,怎么又多了一个redo log文件了。相信也有很多人有这个疑惑,现在把整个过程文档整理出来,希望对大家有所帮忙。

如果对Oracle很了解,那么在整个学习innoDB log的时候,可以把联机重做日志的那套理论套在学习innoDB log上面,几乎是一样的;

一、innodb log的基础知识

看红色框框的那部分

(发现以上特性跟ORACLE的连接重做日志文件简直是一样的)

二、innodb log的相关参数

运行脚本:show variables like 'innodb%log%'; 查看重做日志的相关参数

mysql> show variables like 'innodb%log%';

常用设置的参数有:

innodb_mirrored_log_groups 镜像组的数量,默认为1,没有镜像;

innodb_log_group_home_dir 日志组所在的路径,默认为data的home目录;

innodb_log_files_in_group 日志组的数量,默认为2;

innodb_log_file_size 日志组的大小,默认为5M;

innodb_log_buffer_size 日志缓冲池的大小,图上为30M;

三、参数的相关调优

3.1 重做日志文件的大小设置跟ORACLE一样,面临的问题是相似的。

当innodb log设置过大的时候,可能会导致系统崩溃后恢复需要很长的时间;

当innodb log设置过小的时候,当一个事务产生大量的日志的时候,需要多次切换重做日志文件,会产生类似如下的报警;

130702 12:53:13 InnoDB: ERROR: the age of the last checkpoint is 2863217109,

InnoDB: which exceeds the log group capacity 566222311.

InnoDB: If you are using big BLOB or TEXT rows, you must set the

InnoDB: combined size of log files at least 10 times bigger than the

四、重做日志与二进制日志的区别

4.1 记录的范围不同:二进制日志会记录MySQL的所有存储引擎的日志记录(包括InnoDB、MyISAM等),,

而InnoDB存储引擎的重做日志只会记录其本身的事务日志。

4.2 记录的内容不同:二进制日志文件记录的格式可以为STATEMENT或者ROW也可以是MIXED,其记录的都是关于一个事务的具体操作内容。

InnoDB存储引擎的重做日志文件记录的关于每个页的更改的物理情况。

4.3 写入的时间也不同:二进制日志文件是在事务提交前进行记录的,而在事务进行的过程中,不断有重做日志条目被写入到重做日志文件中。

总结:理论指导实践,理论的知识虽然比较枯燥,学习跟建房子一样,看着很漂亮的高楼大厦,地下往往要有一个坚实的基础,基础打好了,高楼也能建得稳了。

MySQL InnoDB存储引擎锁机制实验

InnoDB存储引擎的启动、关闭与恢复

MySQL InnoDB独立表空间的配置

MySQL Server 层和 InnoDB 引擎层 体系结构图

InnoDB 死锁案例解析

MySQL Innodb独立表空间的配置

本文永久更新链接地址:

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

mysql 重做日志 镜像_MySQLinnoDB重做日志文件相关推荐

  1. mysql 重做日志 镜像_mysql重做日志 - osc_vr7hvjd2的个人空间 - OSCHINA - 中文开源技术交流社区...

    一.重做日志(redo log) 1.作用 确保事务的持久性. 防止在发生故障的时间点,尚有脏页未写入磁盘,在重启mysql服务的时候,根据redo log进行重做,从而达到事务的持久性这一特性. 2 ...

  2. mysql 重做日志 镜像_MySQL重做日志

    MySQL重做日志 故障的类型 事物内部故障 系统故障 介质故障 计算机病毒 日志类型 redo log(重做日志) 处理系统故障 undo log 处理事务故障 (回滚) 重做日志 用来实现事物的持 ...

  3. mysql重做日志恢复数据_MySQL中重做日志,回滚日志,以及二进制日志的简单总结...

    MySQL中有六种日志文件, 分别是:重做日志(redo log).回滚日志(undo log).二进制日志(binlog).错误日志(errorlog).慢查询日志(slow query log). ...

  4. mysql 表空间收缩_【135期】谈谈MySQL中的重做日志,回滚日志,以及二进制日志的区别及各自作用...

    点击上方"Java面试题精选",关注公众号 面试刷图,查缺补漏 >>号外:往期面试题,10篇为一个单位归置到本公众号菜单栏->面试题,有需要的欢迎翻阅 阶段汇总集 ...

  5. MySQL 中的重做日志,回滚日志以及二进制日志的简单总结

    转载自 MySQL 中的重做日志,回滚日志以及二进制日志的简单总结 MySQL中有六种日志文件,分别是:重做日志(redo log).回滚日志(undo log).二进制日志(binlog).错误日志 ...

  6. mysql重做日志与binlog日志区别_【135期】谈谈MySQL中的重做日志,回滚日志,以及二进制日志的区别及各自作用...

    MySQL中有六种日志文件,分别是:重做日志(redo log).回滚日志(undo log).二进制日志(binlog).错误日志(errorlog).慢查询日志(slow query log).一 ...

  7. mysql增加重做日志组_mysql重做日志

    一.重做日志(redo log) 1.作用 确保事务的持久性. 防止在发生故障的时间点,尚有脏页未写入磁盘,在重启mysql服务的时候,根据redo log进行重做,从而达到事务的持久性这一特性. 2 ...

  8. mysql 重做日志原理_MySQL-重做日志 redo log -原理

    [redo log buffer][redo log file]-原理 目录: 1.重做日志写入过程图 2.相关知识点汇总图 3.redo_log_buffer 原理 4.redo_log_file ...

  9. Mysql 重做日志及与二进制日志的区别

    Mysql 重做日志及与二进制日志的区别(转http://blog.uouo123.com/post/623.html) Mysql默认情况下会有两个文件:ib_logfile0和ib_logfile ...

最新文章

  1. 回调函数在C/C++中的使用
  2. MAC 默认python3
  3. postman怎么传session_十几行代码实现分布式 Session
  4. Makefile_01:什么是Makefile?
  5. 全球及中国塑料薄膜行业产销现状及投资竞争力分析报告2021版
  6. 腾讯音视频实验室:基于音视频细分场景的技术创新探索
  7. 洛谷P1130 红牌
  8. halcon file_exists 检查文件是否存在
  9. rlwrap插件,实现sqlplus上下翻页
  10. c 指针打印变量_C程序打印不同类型的指针变量的大小。
  11. FA_手工明细增加固定资产(流程)
  12. 陕师大计算机科学学院研究生,陕师大研究生
  13. 为什么不用网页文件做办公文档
  14. ug筋板不能正确覆盖开放轮廓_安徽省六安市第一中学2017届高三上学期第二次月考地理【解析】...
  15. MP3stego下载(强大的隐写工具)
  16. SaaS到底是什么东西
  17. 163免费企业邮箱服务地址
  18. 【荐】女性新手必看的停车入位技巧图解
  19. 六级答案已出,计算机er要考多少分才能保个好学校?
  20. bigemap如何应用卫星图像到Auto CAD

热门文章

  1. LeetCode刷题笔记:1374.生成每种字符都是奇数个的字符串
  2. Linux 提示 Resource temporarily unavailable
  3. X79 – E5 1650 黑苹果10.15
  4. FFmpeg进行笔记本摄像头+麦克风实现流媒体直播服务,展示在浏览器上。
  5. python表单验证_Python——flask_wtf验证form表单
  6. 天天酷跑1.0.10.0破解版ios 小安苹果iPhone版
  7. c语言之排序算法(一)
  8. 了解JavaScript脚本
  9. 帝国cms 单页面栏目管理
  10. windows系统如何轻松访问AppData文件夹