技术文摘
分享MySQL-group-replication配置步骤示例代码
2025-01-15 04:27:20 小编
分享MySQL-group-replication配置步骤示例代码
在数据库管理中,MySQL-group-replication是一项强大的功能,它能为高可用性和数据一致性提供出色支持。下面详细分享其配置步骤及示例代码。
环境准备
在开始配置前,确保有至少三个MySQL实例,并且它们能互相通信。所有实例都应运行在相同版本的MySQL上,这里以MySQL 8.0为例。
配置文件修改
分别在每个MySQL实例的配置文件(通常是my.cnf或my.ini)中进行以下修改:
- 开启二进制日志:添加
log-bin=mysql-bin,这对于复制功能至关重要。 - 设置唯一的server-id:每个实例的server-id必须不同,例如:
- 实例1:
server-id=1 - 实例2:
server-id=2 - 实例3:
server-id=3
- 实例1:
- 启用组复制插件:添加
loose-group_replication_group_name="aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa",这里的aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa是一个UUID,可通过uuidgen命令生成。 - 设置组复制本地地址:添加
loose-group_replication_local_address="ip:port",将ip替换为实例的实际IP地址,port为实例的端口号,如loose-group_replication_local_address="192.168.1.10:33061"。 - 设置组复制成员地址:添加
loose-group_replication_group_seeds="192.168.1.10:33061,192.168.1.11:33061,192.168.1.12:33061",这里列出所有实例的地址和端口。
重启MySQL服务
完成配置文件修改后,重启每个MySQL实例,使设置生效。
初始化组复制
在每个实例上登录MySQL客户端,执行以下命令:
INSTALL PLUGIN group_replication SONAME 'group_replication.so';
SET GLOBAL group_replication_start_on_boot=OFF;
然后在其中一个实例上(如实例1)执行:
START GROUP_REPLICATION;
其他实例执行:
START GROUP_REPLICATION;
可以通过以下命令检查组复制状态:
SHOW STATUS LIKE 'group_replication%';
当 group_replication_group_status 为 ON,group_replication_local_state 为 4 时,表示组复制配置成功。
通过以上步骤和示例代码,你可以顺利完成MySQL-group-replication的配置,构建一个高可用、数据一致的MySQL集群环境,满足业务对数据库可靠性和性能的要求。
- 美团面试官:详述 MySQL 结构体系即可拿 offer
- 美团面试:是否遇到过慢 SQL 以及如何解决
- MySQL 中的几个 L 你还记得吗
- 在事务 SE16N 中更改列数据元素并显示描述
- Codd提出的数据库管理系统规则
- 如何查看特定 MySQL 数据库中存储函数列表及完整信息
- MySQL GROUP BY 子句能否像使用 MySQL DISTINCT 子句那样用于多个列
- 怎样展示服务器上当前存在的 MySQL 数据库列表
- 如何在MySQL日期中添加3个月间隔且不使用带间隔的“月份”一词
- 函数 INSERT(str, Pos, len, newstr) 中 len 超出字符串剩余长度时的结果
- 如何检查默认情况下 MySQL CHAR() 函数是否返回二进制字符串
- 若该位值为 1 且第一个字符串为 NULL,MySQL MAKE_SET() 函数返回什么
- 什么是存储过程,怎样在MySQL中创建存储过程?
- MySQL触发器如何将行插入到另一个表
- MySQL 中 PRIMARY KEY 与 UNIQUE 约束的差异