实现Ubuntu 18.04 MySQL 5.7 MGR的步骤

在实现Ubuntu 18.04 MySQL 5.7 MGR之前,我们需要确保已经安装了Ubuntu 18.04和MySQL 5.7。接下来,我将为你介绍整个实现的流程,并为每个步骤提供相应的代码和注释。

步骤概览

下面是实现Ubuntu 18.04 MySQL 5.7 MGR的步骤概览:

步骤 描述
1 停止MySQL服务
2 配置MySQL实例
3 配置MGR组成员
4 启动MGR组成员
5 配置MGR主节点
6 配置MGR从节点
7 启动MGR主节点
8 启动MGR从节点
9 验证MGR集群状态

让我们逐步完成这些步骤。

1. 停止MySQL服务

首先,我们需要停止MySQL服务,以便进行后续的配置。

sudo service mysql stop

2. 配置MySQL实例

接下来,我们需要为MySQL配置实例,这里我们选择端口号为3306。

sudo mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql --basedir=/usr
sudo service mysql start

3. 配置MGR组成员

然后,我们需要配置MGR组成员,这里我们选择组成员1、2、3,对应的端口号为3306、3307、3308。

mysql -u root -p
# 创建用于复制的用户
CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;
# 配置组成员1
CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=3307, MASTER_USER='repl', MASTER_PASSWORD='password' FOR CHANNEL 'group_replication_recovery'; 
INSTALL PLUGIN group_replication SONAME 'group_replication.so';
SET GLOBAL group_replication_bootstrap_group=ON;
START GROUP_REPLICATION;
SET GLOBAL group_replication_bootstrap_group=OFF;
# 配置组成员2
CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=3306, MASTER_USER='repl', MASTER_PASSWORD='password' FOR CHANNEL 'group_replication_recovery'; 
INSTALL PLUGIN group_replication SONAME 'group_replication.so';
START GROUP_REPLICATION;
# 配置组成员3
CHANGE MASTER TO MASTER_HOST='127.0.0.1', MASTER_PORT=3306, MASTER_USER='repl', MASTER_PASSWORD='password' FOR CHANNEL 'group_replication_recovery'; 
INSTALL PLUGIN group_replication SONAME 'group_replication.so';
START GROUP_REPLICATION;

4. 启动MGR组成员

启动MGR组成员1:

mysql -u root -p
SET GLOBAL group_replication_start_on_boot=ON;
START GROUP_REPLICATION;

启动MGR组成员2:

mysql -u root -p
SET GLOBAL group_replication_start_on_boot=ON;
START GROUP_REPLICATION;

启动MGR组成员3:

mysql -u root -p
SET GLOBAL group_replication_start_on_boot=ON;
START GROUP_REPLICATION;

5. 配置MGR主节点

现在,我们需要选择一个成员作为MGR主节点。我们选择组成员1作为主节点。

mysql -u root -p
# 配置组成员1为主节点
SET GLOBAL group_replication_primary_member=1;

6. 配置MGR从节点

然后,我们配置组成员2和3为MGR从节点。

mysql -u root -p
# 配置组成员2为从节点
SET GLOBAL group_replication_primary_member=1;
# 配置组成员3为从节点
SET GLOBAL group_replication_primary_member=1;

7. 启动MGR主节点

启动MGR主节点(组成员1):

mysql -u root -p
START GROUP_REPLICATION;

8. 启动MGR从节点

启动MGR从节点(组成员2和3):

mysql -u root -p
START GROUP_REPLICATION;

9. 验证MGR集群状态

最后