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

Mysql——如何做到Redolog崩溃后恢复的

目录

    • 一、MySQL引擎层BufferPool工作过程原理
    • 二、Mysql如何做到Redolog崩溃后恢复的(即mysql是如何保证数据不丢失)
      • 2.1、提交事务时正好mysql直接挂掉,更新的数据是否就丢失
      • 2.2、Mysql如何做到Redolog崩溃后恢复的(即mysql是如何保证数据不丢失)
      • 2.3、为什么把修改的数据存放到RedoLog中而不是直接写到磁盘文件?
      • 2.4、indodb_flush_log_at_trx_commit提供的3种刷盘策略

一、MySQL引擎层BufferPool工作过程原理

  • 首先关闭自动提交,执行一条修改语句。

    SET AUTOCOMMIT =0;
    update employees set name='张三' where id=1:
    
  • 客户端连接mysql服务层,再由服务层的执行器去调用innoDB引擎,首先会去innoDB引擎的BufferPool中查看id=1的数据有没有在BufferPool中进行缓存,

  • 如果有,则直接更新BufferPool中的缓存,

  • 如果没有,则去磁盘.idb文件中去加载id=1的数据,根据索引找到id=1的数据页,找到数据页后,把整个数据页缓存在BufferPool中,从而针对id=1的数据进行修改。把修改之前的数据存放到Undolog中来进行备份,为后续的数据回滚、事务隔离相关的操作。

http://www.xdnf.cn/news/1294471.html

相关文章:

  • 完整源码+技术文档!基于Hadoop+Spark的鲍鱼生理特征大数据分析系统免费分享
  • Linux 软件编程:文件IO、目录IO、时间函数
  • VUE基础笔记
  • JS的学习5
  • 更改webpack默认配置项
  • 单片机启动流程详细介绍
  • 高防CDN和高防IP的各自优势
  • RabbitMQ:Windows版本安装部署
  • STM32H743开发周记问题汇总(串口通讯集中)
  • golang语言和JAVA对比
  • 一条n8n工作流
  • SVN提交服务器拒绝访问的问题
  • Linux 桌面到工作站的“性能炼金术”——开发者效率的 6 个隐形瓶颈与破解方案
  • 服务器硬件电路设计之 I2C 问答(五):I2C 总线数据传输方向如何确定、信号线上的串联电阻有什么作用?
  • 【MCP开发】Nodejs+Typescript+pnpm+Studio搭建Mcp服务
  • 从零到一:TCP 回声服务器与客户端的完整实现与原理详解
  • 基于UniApp的智能在线客服系统前端设计与实现
  • 人工智能入门①:AI基础知识(上)
  • 18.10 SQuAD数据集实战:5步高效获取与预处理,BERT微调避坑指南
  • InnoDB如何解决脏读、不可重复读和幻读的?
  • 公司项目用户密码加密方案推荐(兼顾安全、可靠与通用性)
  • HiSmartPerf使用WIFI方式连接Android机显示当前设备0.0.0.0无法ping通!设备和电脑连接同一网络,将设备保持亮屏重新尝试
  • antdv Modal的简单使用
  • Hive 创建事务表的方法
  • 18. parseInt 的参数有几个
  • 开源工具can-utils的使用
  • Docker 在 Linux 中的额外资源占用分析
  • 云计算-实战 OpenStack 私有云运维:服务部署、安全加固、性能优化、从服务部署到性能调优(含数据库、内核、组件优化)全流程
  • OpenCV常见问题汇总
  • Java JDK8环境配置