新增的服务器,准备做主主,有些迷糊,请教若干概念问题

2022-04-01 20:19:22 +08:00
 uti6770werty

原有 A 服务器,准备加 B ,和 A 做成主主模式
学习完一些案例和概念,也在虚拟机上做成了主 /备的实验,有些迷糊的概念,想请教一下 V 友

1 、Mysql 的机制,是改动的一方(master),向 slave 主动去推送数据变化,完成数据库的一致性,对不对?

2 、Mysql 的机制,是不能 slave 主动去获取 master 的数据库变化,由 slave 完成同步数据库一致性的,对不对? 问这个问题的想象场景是,master 可能会在间隔时间内发生 N*N 次数据变化,那么所有的变化节奏,slave 都会跟着节奏重做,而不是只看表的当前状态?

3 、A 原来已经有数据,在虚拟机上做的实验,是虚拟机 A 在配置成功,再上线后,A 的数据发生变化,B(slave)才会发生变化,那么,如果此时 B 想把 A 之前已经有的数据也完全镜像过来? 是否有在线运作的方式?

4 、我想象的 A/B 同步应该是要这么做,先把 A 停下来,B 同步好 A 的结构,数据,然后记下 binlog 的序号,pos 的序号,再去 B 里 CHANGE MASTER ****,进行步骤一致性,然后 A 和 B 跟着上线,对不对?

5 、能不能省事,A 不停,把 B 配置好,B 就开始 sync 了,等上一天,然后 B 就 ready 状态了?

1756 次点击
所在节点    MySQL
2 条回复
Chinsung
2022-04-02 17:53:55 +08:00
1. 并不是主动,master 只负责往 binlog 写日志,slave 去订阅日志,有没有 slave 订阅和 slave 有没用成功与 master 无关
2. 不能,本质上 slave 只是拿到 binlog 去原模原样执行一次
3. 这个可以,前提是主库一直开启着 binlog ,从库 change master 的时候是可以指定 binlog 文件的
4. 同 3
5. 同 4
在线同步百度下文章
jifengg
2022-04-06 10:16:30 +08:00
做过双主,其实,如果只有两台服务器的话,不建议做主主,主从可能更适合。有 4 台以上才建议做双主多从这样。
双主,最主要的问题是,表的自增 id ,如果 A 不是一开始就设置步长=2 的话,需要停机修改配置后重启。
另一个问题是,AB 任意一台机器出现同步异常,数据一致性就很难搞,得停机。

针对问题 3 ,4 ,5 ,A 是可以不停机的。可以参考: https://cloud.tencent 点.com/developer/article/1468545

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/844392

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX