mysql主从复制
所属分类 mysql
浏览量 651
mysql主从复制是 mysql高可用性,高性能(负载均衡)的基础
简单,灵活,部署方式多样,根据不同业务场景部署不同复制结构
监控复制状态,复制出错或延时 处理
一主一从
一主多从 扩展读性能
多主一从 5.7开始支持
主主复制
联级复制
用途
实时灾备 故障切换 读写分离 备份
原理
主库 log dump线程传binlog
从库
i/o线程接受读取binlog,并写入relay log文件
sql线程从relay log 文件中读取binlog并应用到从库
常见问题及解决
主库宕机后,数据丢失
半同步复制
主库写压力大,因从库只有一个sql 线程来持久化,复制可能延迟
并行复制
半同步复制原理
事务在主库写完binlog后需要从库返回一个已接受,才响应客户端
5.5集成到mysql,以插件的形式存在,需要单独安装
确保事务提交后binlog至少传输到一个从库
不保证从库应用完成这个事务的binlog
性能有一定的降低
网络异常或从库宕机,卡主库,直到超时或从库恢复
并行复制原理 从库多线程apply binlog
社区版5.6中新增
5.7版本并行复制基于事务组
联级复制(常用)
A->B->C
B中添加参数log_slave_updates
B将把A的binlog记录到自己的binlog日志中
复制的监控
show slave status
复制出错处理
常见:1062(主键冲突),1032(记录不存在)
解决:
手动处理
跳过复制错误:set global sql_slave_skip_counter=1
上一篇
下一篇
IDEA 常用设置
idea 当前文件查找 快捷键失效
云原生设计理念
MYSQL binlog_format
ElasticJob 简介
git 本地创建新分支并push