当前位置: 首页 > news >正文

Java常见技术分享-27-事务安全-事务日志-事务日志框架

事务日志的框架

Redo Log (重做日志-InnoDB存储引擎层)

它记录的是数据修改的”动作“, 这样数据提交后 如果还没来得及写入磁盘, 崩溃了, 重启后就能通过重新执行这些”动作“, 把数据恢复到崩溃前的状态, 保证数据提交之后, 数据一定能持久化到磁盘, 不会因为崩溃而消失。

Undo Log (回滚日志- InnoDB存储引擎层)

它记录的是数据修改前的”快照“,比如你把数字从1改成2 , undo log 会记录着 ”这个位置原来是1 “, 如果数据出错或者要回滚, 就能通过undo log 将数据回滚到数据修改之前的状态。 保证事务执行过程中, 如果出错或者用户执行了rollBack, 能将数据恢复到事务开始前的状态,

BinLog (Mysql层)

它记录了 修改了什么数据, 比如 你把数字从1 改成 2 , 就直接记 把某个位置改成2 。 保证 从库 能准确的复现主库的业务操作 或者进行数据备份。

BinLog 和 Redo Log 的区别

核心区别在于 redo log 是 ”物理日志“ , 而 BinLog 是 ”逻辑日志“。
物理日志, 记录是 在 ”哪个数据页上做了什么改动“, 就像将 ”在第3页第5行的位置, 把数字加1 “, 它更贴近底层的存储结构, 恢复速度非常快。 而 逻辑日志, 记录的是”数据的逻辑变化“, 像 ”把id =2 的记录加1 “,更偏向业务层面的操作。
虽然最终结果看起来一样, 但是他们记录的角度和用户完全不同。
redo log 是为了让innodb 引擎 在崩溃后能快速恢复数据, 而binlog试了让从库能准确复现主库的业务操作

http://www.jsqmd.com/news/183062/

相关文章:

  • 鸿蒙开发语言ArkTS:全面解析优缺点与未来前景
  • lora监督微调(SFT)
  • Arc 弧——CAD图形对象详解
  • TongWeb集中管理THS简便部署
  • 《代码大全2》观后感(九):团队协作——好代码是“共同创造”的结果
  • C语言数据结构-数组实现栈详解
  • Sonic模型依赖项安装踩坑指南:CUDA版本匹配
  • 使用 WSL 管理 Ubuntu 完整指南
  • nt!WMIInitialize函数分析之WMIAdminDevice和WMIDataDevice设备对象的建立
  • 《创业之路》-788-KPI和OKR的考核机制的比较:如果你需要控结果、保交付、管绩效 → 用好KPI;如果你想激活力、促创新、对齐战略 → 引入OKR
  • 关于图表,对理解IT系统业务流程设计的辅助作用
  • Sonic数字人能否支持竖屏视频?9:16比例适配
  • Sonic数字人用户反馈收集表上线,欢迎填写
  • 对于技术栈的多角度理解
  • 内存对决:rust、go、java、python、nodejs
  • 《创业之路》-789-UML描述软件系统与研发团队的组织系统,要高效运行的相似点与相异点。
  • 上位机知识篇---文件传输
  • 社区疾病预防与健康管理微信小程序的设计与实现
  • Sonic能否用于聋哑人手语转换?跨模态扩展思考
  • 《创业之路》-790-KPI含义与用途,以及从系统论的角度看,个人是系统,团队是系统,产品也是系统,对个人KPI指标、团队KPI指标、产品KPI指标的相似处与不同处
  • Linux命令-ifup命令(激活网络接口)
  • 基于GWO优化Transformer多输入多输出回归预测与改进NSGA III的多目标优化附Matlab代码
  • gin HTTP路由分析
  • 《创业之路》-792-产品有哪些常见的关键技术指标? 个人有哪些关键的绩效指标?企业经验有哪些关键绩效指标? 给出示例
  • Sonic能否处理带噪音的音频输入?抗干扰能力测试
  • Sonic模型License变更预警:关注最新开源协议动态
  • 《代码大全2》观后感(八):测试——代码质量的“最后一道关卡”
  • python装饰器(一)
  • 《创业之路》-794-对于相同的现实问题,中底层管理者关注当下、内部、成本、效率、战术、营收、一次性;高层管理者关注未来、外部、资本、价值、战略、竞争性、持续性。
  • RTX 4090运行Sonic有多快?生成1分钟视频仅需XX秒