mysql bin-log和innodb_log的关系
2024-08-29 21:54:27
首先,二进制日志会记录所有与MySQL数据库有关的日志记录,包括InnoDB、MyISAM、Heap(memory除外)等其他存储引擎的日志。而InnoDB存储引擎的重做日志记录有关该引擎本身的事务日志。
其次,记录的内容不同。无论用户将二进制日志文件记录的格式设为STATEMENT还是ROW,又或是MIXED,其记录的都是关于一个事务的具体操作内容,即该日志是逻辑日志。而InnoDB存储引擎的重做日志是关于每个页(Page)的更改的物理情况。这基本上算是由于mysql的server和引擎各自独立实现的结果吧。
此外,写入的时间也不同。二进制日志文件仅在事务提交后进行写入,即只写磁盘一次,不论这时该事务多大。而在事务进行的过程中,却不断有重做日志条目(redo entry)被写入到重做日志文件中。
这两者的关系决定了mysql server crash之后,只会用到Innodb log,bin-log并没有什么用处,之于oracle而言,性质上bin-log中的内容相当于都已经是checkpoint之前的内容。所以bin-log不小心被删除也无所谓,不会影响recovery,但是Innodb_log则不行,可能会导致无法recovery的情况。
最新文章
- SQL范式
- gcc编译参数-fPIC的一些问题
- ssh 无密码登录 非相同用户
- Utrack声卡和机架包的调试
- 对android录制的NV21视频数据进行旋转(90,180,270)与剪切
- C语言之const和define
- SSAS中Cube的结构
- ASCII 码表对照
- 转:request.getSession(true)和request.getSession(false)的区别
- Seafile安装踩坑
- Windows as a Service(4)——使用Intune管理Windows10更新
- python 10大算法之二 LogisticRegression 笔记
- 一文看懂npm、yarn、pnpm之间的区别
- spring boot 与 spring cloud 关系
- 识别oracle数据库软件版本号
- 解决vshost32.exe已停止工作
- Mac上搭建nginx教程
- 打开网页直接弹出qq对话框?
- Spring之jdbcTemplate实现orm
- composer 使用(踩坑笔记)
热门文章
- Hadoop学习笔记(老版本,YARN之前),MapReduce任务Namenode DataNode Jobtracker Tasktracker之间的关系
- 让IE8支持HTML5及canvas功能!
- java之容器
- ODBC连接问题
- 用CSS让未知高度内容垂直方向居中
- oracle 12541,12560,00511无监听程序, 协议适配器错误问题分析及解决方案
- dSYM atos crash log 定位到代码行的方法(转)
- 在 VS 中嵌套文件
- codeforces B. Design Tutorial: Learn from Life
- ionic 添加地图定位功能