【mysql我能讲两小时042】主从复制有几种方式?分别说说?
mysql 方式 几种 小时 主从复制 分别 我能
2023-09-27 14:29:25 时间
主从复制有几种方式?分别说说?
异步复制
MySQL 默认的复制策 略, Master 处理事务过 程中, 将其写入 Binlog 就会通知 Dump thread 线程处理, 然后完成事 务的提交, 不会关心是否成功发送到任意一个 slave 中
半同步复制
Master处理事务过程中, 提交完事务后, 必须 等至少一个 Slave 将收到的 binlog 写入 relay log 返回 ack 才能继续执行处理用户的事务。
相关配置
rpl_semi_sync_master_wait_point = AFTER_COMMIT 【 这里 MySQL 5.5 并没有这个 配置, MySQL5.7 为了解决半同步的问题而设置 的】
rpl_semi_sync_master_wait_for_slave_count = 1 (最低必须收到多少个 slave 的 ack) rpl_semi_sync_master_timeout = 100 (等待 ack 的超时时间)
增强半同步复制
增强半同步和半同步不同是, 等待 ACK 时间不同
rpl_semi_sync_master_wait_point =AFTER_SYNC (唯一区别)
半同步的问题是因为等待 ACK 的点是 Commit 之后, 此时 Master 已经完成数据 变更, 用户已经可以看到最新数据, 当 Binlog 还未同步到 Slave 时, 发生主从切 换, 那么此时从库是没有这个最新数据的, 用户又看到老数据。
增强半同步将等待 ACK 的点放在提交Commit 之前, 此时数据还未被提交, 外界看不到数据变更, 此时如果发送主从切换, 新库依然还是老数据, 不存在数据不一致的问题。
相关文章
- Mysql全局锁和表锁
- MySQL学习笔记_8_SQL语言基础复习
- 【MySQL从入门到精通】【高级篇】(十九)索引的分类&创建索引的三种方式&删除索引的两种方式
- MySQL聚簇索引物理结构及主键查询过程
- MySQL主从 常见的错误及解决方案
- MySQL字段联合去重sql
- CentOS6 下以源码方式安装 MySQL 记录
- MySQL技术内幕(第5版)
- Ubuntu下关闭apache和mysql的开机启动
- Mysql:通过SSH隧道方式实现安全通讯
- mysql的三种连接方式
- mysql拷贝表的几种方式
- mysql数据库 表 导入导出
- mysql 对应数据库服务器配置 所能承受的tps和qps
- mysql的启动方式
- 盘点Mysql的登陆方式
- Mysql 4 种方式避免重复插入数据!
- mysql连接方式
- MySQL先进的技术-存储引擎
- MySQL DDL执行方式-Online DDL介绍
- MYSQL 最朴素的监控方式
- Spring Boot入门(07):整合 MySQL 和 Druid数据源 | 全网最详细保姆级教学(两万字)
- mysql安装方式汇总