博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
半同步复制简介
阅读量:5820 次
发布时间:2019-06-18

本文共 620 字,大约阅读时间需要 2 分钟。

半同步复制简介:

默认情况下,MySQL 5.5/5.6/5.7和MariaDB 10.0/10.1的复制功能是异步的,异步复制可以提供最佳的性能,主库把Binlog日志发送给从库,这一动作就结束了,并不会验证从库是否接收完毕,但这同时也带来了很高的风险,这就意味着当主服务器或从服务器发生故障时,有可能从机没有接收到主机发送过来的Binlog日志,会造成主服务器/从服务器的数据不一致,甚至在恢复时会造成数据丢失

为了解决上述问题,MySQL 5.5 引入了一种半同步复制(Semi Replication)模式,该模式可以确保从服务器接收完主服务器发送的Binlog日志文件并写入自己的中继日志(Relay Log)里,然后会给主服务器一个反馈,告诉对方已经接收完毕,这时主库线程才返回给当前session告知操作完成,如下图所示。当出现超时情况时,源主服务器会暂时切换到异步复制模式,直到至少有一台设置为半同步复制模式的从服务器及时收到信息为止(见图2-140)。

简言之,半同步复制在一定程度上可保证提交的事务已经传给了至少一个备库,因此,半同步复制与异步复制相比,进一步提高了数据的完整性。

注意 半同步复制模式必须在主服务器和从服务器同时启用,否则主服务器默认使用异步复制模式。


本文转自浅景尘51CTO博客,原文链接:http://blog.51cto.com/857803451/1951884 ,如需转载请自行联系原作者

你可能感兴趣的文章
JAVA 学习笔记2_程序结构、方法定义
查看>>
Cocos2d入门--3--小球运动
查看>>
php页面静态化技术;学习笔记
查看>>
【非凡程序员】 OC第十六节课 初识IOS开发二 (打地鼠的游戏)
查看>>
视频转码成mp4格式,添加关键帧,添加元数据,把元数据放在第一帧
查看>>
用户授权控制、数据库远程维护、综合应用案例
查看>>
Windows XP \Windows 2003启动过程的学习及故障分析处理(七)
查看>>
Rsync服务器配置,安装、配置、实例以及原理详解(三)
查看>>
我的友情链接
查看>>
spring 使用redis集群配置
查看>>
Java创建多线程的方法
查看>>
Linux系统基础优化脚本--安装完操作系统必做的操作
查看>>
MYSQL的账号管理和授权
查看>>
cocos2d-x-3.0rc0新工程的分辨率设置和控制台输出信息
查看>>
34个漂亮的应用程序后台管理系统界面(系列二)
查看>>
【转】com.microsoft.sqlserver.jdbc.SQLServerException: 到主机 的 TCP/IP 连接失败
查看>>
oracle 插入时间字符串 Date类型
查看>>
rhel6.1 kvm安装virtio驱动
查看>>
oracle的正则表达式
查看>>
Mysql基础语法
查看>>