innodb 日志

来源:互联网 发布:java网上报名系统源码 编辑:程序博客网 时间:2024/06/15 19:51
  • 日志两种格式
    • 物理的日志
      • 记录完整的页
      • 记录页中被修改的 内容
    • 逻辑日志
      • 记录执行的 SQL 语句

物理日志相对比较大,比如索引分裂是会影响很多记录,导致日志量很大
逻辑日志日志量会很小,但是会有部分执行 数据一致性问题

  • 物理日志
    • 优点:恢复时可直接通过日志覆盖,不依赖原页面上面的内容。并且是幂等的。
    • 缺点:日志量很大
  • 逻辑日志

    • 优点:日志量小
    • 缺点:
      • 插入记录时 , 如果表中有多个索引 需要向B-TREE中插入记录,有可能第一个成功了第二个没有成功。
      • 索引分裂时可能需要将页A中数据移动一半到B中,A页写入磁盘成功,B没有写入磁盘时发生了Crash
  • Innodb日志方式

    • 采用逻辑与物理相结合 物理到Page Page内部是逻辑的(space id, page no, operation code, data)
    • 虽然采取此方式可以解决部分执行问题 但是数据一致性还是无法解决(因为对于page内的信息使用逻辑日志进行记录,所以当出现坏块时,并不能解决)
0 0
原创粉丝点击