【MySQL】 主从复制多拓扑搭建实验

一、实验目的

掌握单主机多 MySQL 实例基础上搭建一主一从(1-2) 传统主从复制,理解server-id、binlog、relay-log 复制核心参数作用;

学会搭建链式主从(1-2-3)级联复制,掌握备份数据初始化新从库的完整流程;

理解 GTID 全局事务 ID 复制原理,搭建环形复制拓扑(1-2-3-1);

熟练完成复制账号创建、主从关系配置、复制线程启停、同步数据验证、旧复制环境清理等运维操作;

理解不同复制拓扑的同步逻辑、适用场景与 GTID 规避循环复制的机制。

二、实验内容

本实验基于单主机 4 套 MySQL 多实例(server1~server4),分三阶段搭建三种复制架构:

搭建 1 主 1 从(server1 为主库、server2 为从库)基础主从复制,完成参数配置、复制账号授权、数据同步验证;

在 1-2 主从基础上扩展链式级联复制,新增 server3 作为 server2 的从库,验证多级数据同步;

开启 GTID 模式,清理原有复制环境,搭建 1-2-3-1 环形复制拓扑,验证全节点双向同步,理解 GTID 保障事务唯一性、避免循环复制的原理。

三、实验心得

这种环形里每台服务器都能同时接收写入、同步数据,既分担了压力,又能让任意节点的修改最终同步到所有机器上,是一种兼顾读写扩展性和数据一致性的架构设计

靠 GTID 和 server_uuid 保证事务在环里不会循环重复执行

这种架构的优势是无单点瓶颈、读写扩展性更强

四、实验操作步骤

二、主从复制 1------2

1

2 、查看配置文件

3 、server-id、log-bin、relay-log

4 、自动加载repl.cnf 复制配置

5

6 、一台机器跑多个独立 MySQL 服务

7 、查看进程状态

8 、进入server1

9 、查看主库二进制日志文件名和日志位置

10 、在主库创建专门的复制账号并授权复制权限

11 、主库创建库并导入测试数据,用于验证

12、 进入server2

13 、在从库配置主从关系

14 、查看从库库列表

15 、启动从库复制线程,开启主从复制

16

17 、查看从库库列表,能自动看到主库的world库

三、在已有一主一从的环境里,再加一个新的从库,横向扩展,1------2,2------3

1、 备份主库数据,,未了后续建从库

2 、改配置文件

3、 登录server3

4 、导入第1题的备份文件,让server3自动知道自己的主库是server2

5、 启动server3的复制线程

6 、在server1上删除ID>4070的数据,发现2和3也同步修改,证明复制链路生效

7

四 1------2------3------1环形复制拓扑

1

2 、为每个mysql开启GTID

3

4

5 、清除旧的复制,为GTID复制做准备,避免冲突

6 、重置主库,清空旧的二进制日志,确保复制环境干净。

7、 让2、3使用GTID进行复制

8 、开启从库2、3的复制线程

9 、在1上删除 ID>4060 的数据,2、3数据同步

10 、这是GTID复制中唯一标识每个实例的 ID,确保复制的全局唯一性

11

12 、 3------1,将1的主库修改为3

13、 在2上删除ID>4050 的城市数据,1和3同步修改,证明环形复制生效

相关推荐
2501_931803758 分钟前
MySQL 索引核心原理
数据库·mysql
Pointer Pursuit9 分钟前
make / Makefile
linux·运维·服务器
ZhangJun9510 分钟前
Linux常用命令笔记,中高级运维高频指令,并附上vim常见操作
linux·运维·centos·云计算·vim
浪潮IT馆12 分钟前
Windows 10 安装 PostgreSQL 9.6.24 完整教程
数据库·windows·postgresql
逐流人19 分钟前
Ceph对象存储与文件系统存储管理:从RADOS网关、S3与Swift到CephFS快照同步
linux·运维·ceph·云原生·云计算·swift·rados
分布式存储与RustFS28 分钟前
日志目录的预算是 2 GiB:轮转、保留和压缩这三件事
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
wdfk_prog37 分钟前
Wi-Fi Direct 教程 05:control socket 与 eloop——P2P_FIND 怎样进入 wpa_supplicant 命令解析器
运维·服务器·后端·网络协议·ubuntu·p2p·wifi-direct
Golden_Chen38 分钟前
在 Ubuntu 上搭建 FTP 服务器
linux·运维·服务器
谢亮_vipxieliang39 分钟前
一套 Compose 搭起完整开发环境:MySQL + Redis + Nginx
redis·mysql·nginx·docker
xbzb1 小时前
Nginx 反向代理总 404?Location 匹配与 proxy_pass 尾斜杠避坑手册
linux·运维·nginx·虚拟主机