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

主从切换是怎么保证数据一致的?从库为什么会延迟

前言

主库出问题,一般需要切换从库为主库。那么对于正在同步的数据,如何保证一致性呢?
备库有时候延迟好几个小时的原因有哪些?解决方案是什么?


主从切换是怎么保证数据一致的?从库为什么会延迟

  • 前言
  • 主库出问题了,从库怎么办?
  • 备库为什么会延迟好几个小时?

主库出问题了,从库怎么办?

CTID,就是mysql在写入binlog的时候会生成一个: service-id:10

这样的字符串,前面表示机器的uuid,后面表示在次机器上执行的第几个事务。

单调递增。

从库读取时,只需要根据这个判断是否已经执行过,从库维护了所有执行过的CTID列表。

这样切换主库的时候只需要根据这个判断即可。

备库为什么会延迟好几个小时?

因为主库是并发响应的,从库最开始是单线程同步的。

还有大事物等原因。

mysql已经引入了多线程同步的机制。

一种是通过对于同时进入到commit的事务,是可以并行执行的。msyql的主库会把写入redolog和commit之间的所有事务记录到binlog中。然后在从库中分配到不同的线程work中执行。

第二种是 计算出每一行的hash值,如果两个事务没有相同值,那么就并行执行

第三种是 在第二种的基础上增加了一个约束,即在主库上同一个线程执行的两个事务,在从库也要保证顺序。

http://www.lryc.cn/news/625404.html

相关文章:

  • Pandas数据处理与分析实战:Pandas数据处理与Matplotlib可视化入门
  • 定向IP与私有APN的区别与作用
  • Spring事务基础:你在入门时踩过的所有坑
  • JavaWeb开发笔记合集
  • AutoSarAP状态管理的状态机能否理解成C++的类?
  • 污水处理行业的 “智能革命”:边缘计算网关如何重塑传统运维模式?
  • 【计算机视觉】检测与分割详解
  • Spring框架-数据访问层和事务管理
  • OpenCV计算机视觉实战(20)——光流法运动分析
  • PicoShare 文件共享教程:cpolar 内网穿透服务实现跨设备极速传输
  • 【数据结构】使用队列解决二叉树问题
  • 通信方式:命名管道
  • 如何禁用 Windows 服务器的自动更新以避免意外重启
  • 协程库项目面试常见问题 | 简历写法
  • 使用OpenCV计算灰度图像的质心
  • 前端面试核心技术30问
  • Springboot使用Selenium+ChormeDriver在服务器(Linux)端将网页保存为图片或PDF
  • 【完整源码+数据集+部署教程】太阳能板表面损伤检测图像分割系统源码和数据集:改进yolo11-DynamicHGNetV2
  • Linux------《操作系统全景速览:Windows·macOS·Linux·Unix 对比及 Linux 发行版实战指南》
  • C#项目集成海康SDK指南:从搭建环境到实现视频预览、录制、截屏
  • 什么是AKSK?
  • F003疫情传染病数据可视化vue+flask+mysql
  • 100202Title和Input组件_编辑器-react-仿低代码平台项目
  • 全平台轻量浏览器推荐|支持Win/macOS/Linux,极速加载+隐私保护+扩展插件,告别广告与数据追踪!
  • 私有化部署全攻略:开源大模型本地化改造的性能与安全深度评测
  • 在 IntelliJ IDEA 中修改 Git Commit 描述
  • Linux的ALSA音频框架学习笔记
  • Voice Agents:下一代语音交互智能体的架构革命与产业落地
  • 项目一系列-第5章 前后端快速开发
  • 【qml-5】qml与c++交互(类型单例)