28.mysql读写分离

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

无代理结构

有代理结构

两个各有优势

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

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

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

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

相关推荐
亚空间仓鼠4 分钟前
关系型数据库MySQL(二):高级特性
数据库·sql·mysql
亚空间仓鼠26 分钟前
关系型数据库MySQL(五):Galara高可用
数据库·mysql
做时间的朋友。1 小时前
MySQL 8.0 窗口函数
android·数据库·mysql
试试勇气1 小时前
MySQL--库的操作
数据库·mysql
青城山下————2 小时前
CentOS 7(3.10 内核)成功安装 MySQL 5.7 全流程实践(附问题总结)
linux·mysql·centos
Chasing__Dreams2 小时前
Mysql--基础知识点--110--select ... lock in share mode VS select ... for share
数据库·mysql
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.3 小时前
MySQL高可用集群实战:MHA搭建全攻略
android·mysql·adb
毅炼3 小时前
MySQL 常见问题总结(3)
数据库·sql·mysql
杨云龙UP3 小时前
ODA-Oracle实践记录:通过Navicat导出导入表CSV文件并清理重复数据,处理OA待办延迟刷新问题_20260416
linux·运维·服务器·数据库·sql·mysql·oracle
xuhaoyu_cpp_java4 小时前
MySql学习(四)
数据库·经验分享·笔记·sql·学习·mysql