Mysql主从同步原理和主从同步的作用

Mysql主从同步原理和主从同步作用

如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

Mysql主从同步原理

Mysql的主从同步是异步的同步,从库需要两个线程来完成,其中一个线程叫sql线程,另外一个叫IO线程,在主库上由一个IO线程负责完成。要想完成主从同步,主库必须要开启bin-log,当用户请求主库时候,如果有增删改时,会把数据写入主库数据文件里,把更新的结果写到bin-log里面,主从同步是从库找主库同步,从库start slave后,由从库的IO向主库发起请求,主库接收到请求后,会通过用户名,密码,IP地址,端口验证请求是否合法,如果都正确就允许从库连接,从库同步时从change master处查出信息,会告诉主库,我要从你的哪个位置哪个点给我发bin-log。主库的IO线程收到请求后,会根据从库需求范围发送bin-log,当从库的IO线程收到bin-log后,会把bin-log日志写到自己的某个地点(中继日志),然后更新本地文件的master info位置点,接下来IO线程继续向主库请求,说把当前位置点以后的bin-log再发给我,然后把bin-log再放入中继日志,再更新本地的master info中位置点,如此循环的把主库的bin-log写入本地的中继日志。而本地的sql线程,时刻监控中继日志,一旦有bin-log,就把中继日志的bin-log语句,经过转换写到本地的数据文件中,这样,就是IO线程不断的从主库取得bin-log,放入本地的中继日志,sql线程不断的从本地中继日志中取bin-log,经转换存入本地数据文件中,实现了主从数据同步。

注意:从库开启start  slave之前,要不位置点之前的主库上的数据先导到从库上,否则,只是在位置点之后主从数据同步,位置点之前的数据就不同步了,所以,要在开关开启之前,先把位置点之前的数据让主从一致,这样无论何时主从数据都会一致的。这个位置点就是从库上:master_log_file=”” ,master_log_pos=””这里的位置点。

主从同步的作用

Mysql主从同步部署可以使主从服务器互为备份,大大的加强了数据库架构的健壮性,解决数据库单点故障,当主服务器出现问题时,我们可以人工或自动切换到从服务器继续提供服务。

主从部署的同时加上读写分离,通过在从服务器上仅仅处理用户的查询请求,在主服务器上处理用户的写请求,分担数据库压力。

如果对运维课程感兴趣,可以在b站上、csdn或微信视频号 上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维实战课程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值