28.mysql读写分离

一主多从就是数据库读写分离结构。

无代理结构

有代理结构

两个各有优势

因为主从延迟,客户端更新数据立即读,从库里读到的是更新前的数据,这是过期读。

为了读到从库的数据是新的,采用以下方案

  • 强制走主库方案:金融系统需要实时知道最新数据情况,只有走主库。
  • sleep方案:读从库前先等一会
  • 判断主备无延迟方案;
    • 判断位点一致;
    • 对比GTID集合
  • 配合semi-sync方案;主库确认备库收到了这个日志
  • 等主库位点方案;从库执行一条命令,如果结果大于0就在从库查,否则就到主库查
  • 等GTID方案:事务执行完返回的gtid,根据这个gtid判断从库是否可以查询。

过期读和不过期读,选择哪个就看业务需求。

相关推荐
tan180°7 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
DuelCode8 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
幽络源小助理9 小时前
SpringBoot基于Mysql的商业辅助决策系统设计与实现
java·vue.js·spring boot·后端·mysql·spring
爬山算法10 小时前
MySQL(116)如何监控负载均衡状态?
数据库·mysql·负载均衡
KellenKellenHao19 小时前
MySQL数据库主从复制
数据库·mysql
一只fish20 小时前
MySQL 8.0 OCP 1Z0-908 题目解析(16)
数据库·mysql
叁沐1 天前
MySQL 07 行锁功过:怎么减少行锁对性能的影响?
mysql
Java烘焙师1 天前
架构师必备:业务扩展模式选型
mysql·elasticsearch·架构·hbase·多维度查询
飞翔的佩奇1 天前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
@Ryan Ding1 天前
MySQL主从复制与读写分离概述
android·mysql·adb