技术文摘
分享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集群环境,满足业务对数据库可靠性和性能的要求。