Mysql Replication部署方案

一、Mysql Replication

二、Replication的原理

三、Replication的作用

四、Replication如何工作

五、Replication常见方案

六、实验部分

一、Mysql Replication
什么是Mysql Replication:
1、Myql Replication是Mysql本身自带的一个工具。
2、Replication可以实现将数据从一台数据库服务器(Master)复制到一或多台数据库服务器(Slave)。
3、默认情况下属于异步复制,无需维持长连接。
4、通过配置,可以复制所有的库或者几个库,甚至库中的一些表,都是可以自行设定的。

二、Replication的原理
简单的说就是master将数据库的改变写入二进制日志,Slave同步这些二进制日志,并根据这些二进制日志进行数据操作

在这里插入图片描述
DML:SQL操作语句,Update 、insert、delete
Relay log :中继日志

三、Replication的作用
1、Fail Over 故障切换
2、Backup Server 备份服务,无法对SQL语句执行产生的故障恢复,有限的备份—因为数据库操作不可逆性。
3、High Performance高性能,可以多台Slave,实现读写分离,在一般的中小型企业,一个主库+3—4个从库,一般不会超过5个从库。

四、Replication如何工作
1、master 将改变记录到二进制日志(binary log)中,这些记录叫做二进制日志事件(binary log events)。
2、slave将master的binary log events拷贝到它的中继日志(relay log);
3、slave重做中继日志中的事件,修改slave上的数据。
在这里插入图片描述
Mysql主从复制过程(对上图描述):
第一步:master 记录二进制日志,在每个事务更新数据完成之前,master在二进制日志记录这些改变,Mysql将事务写入二进制日志,即使事务中的语句都是交叉执行的,在事件写入二进制日志完成后,master通知存储引擎提交事务。
第二步:slave将master的binary log 拷贝到它自己的中继日志,首先,slave开始一个工作线程——I/O线程。I/O线程在master上打开一个普通的连接,然后开始binlog dump process。Binlog dump process从master的二进制日志中读取事件,如果已经执行完master产生的所有文件,它会睡眠并等待master产生新的事件。I/O线程将这些事件写入中继日志。
第三步:SQL slave thread (SQL从线程)处理该过程的最后一步,SQL线程从中继日志读取事件,并重新执行其中的事件而更新slave的数据,使其与master中的数据一致。

五、Replication常见方案
1、One Master and Muti Slave 一主多备
在这里插入图片描述
描述:一般用来做读写分离,master写,其他Slave读,用户访问,虽然“读”所产生的数据量大,被分离给多台Slave,但是Master需要给其他slave同步数据,所以这种架构最大的问题I/O压力集中。在Master上<多台同步影响Input/Output>。

2、M-S-S (比较推荐的)
在这里插入图片描述
描述:使用一台Slave作为中继,分担Master的压力,Slave中继需要开启bin-log,并配置log-slave-updates,
Slave中继可使用Black-hole存储引擎,不会把数据存储到磁盘,只记录二进制日志。一般在跨机房中部署的比较多。
Black-hole——称作黑洞引擎。

3、M-M 双主互备
在这里插入图片描述
描述:很多人误以为这样可以做到MySQL负载均衡,实际没有什么好处,每个服务器需要做同样的同步更新,破坏了事物的隔离性和数据的一致性。

4、M-M-M 环状级联—早期新浪在用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值