MySQL 8主从复制配置详解,你学会了吗?

数据库 MySQL
MySQL 8主从复制是实现高可用和负载均衡的重要方式之一。下面详细说明如何在MySQL 8中进行主从复制的配置。

1、配置主服务器

在主服务器上进行以下操作:

(1)开启二进制日志

打开MySQL配置文件 my.cnf,在 [mysqld] 段下添加如下行:

log-bin=mysql-bin

log-bin 指定二进制日志文件的名称,mysql-bin是默认的二进制日志前缀,后面会跟一个数字标识。如果不指定则使用默认名称。

(2)创建复制用户

创建用于从服务器复制数据的用户,比如repl。打开MySQL控制台,执行如下命令:

CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;

在创建用户时,可以指定用户的IP地址和密码。在授予权限时,需要授予REPLICATION SLAVE权限。

2、配置从服务器

在从服务器上进行以下操作:

(1)开启复制功能

打开MySQL配置文件 my.cnf,在 [mysqld] 段下添加如下行:

server-id=2
log-bin=mysql-bin

server-id 是唯一标识从服务器的ID,必须保证主服务器和从服务器的server-id不同。

(2)连接主服务器

在从服务器上使用CHANGE MASTER TO命令连接到主服务器,并设置主服务器的IP地址、端口号、用户名、密码、当前正在写入的二进制日志文件的名称和位置。例如:

CHANGE MASTER TO
MASTER_HOST='192.168.1.100',
MASTER_PORT=3306,
MASTER_USER='repl',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=1541;

其中,MASTER_HOST、MASTER_PORT、MASTER_USER和MASTER_PASSWORD分别对应主服务器的IP地址、端口号、用户名和密码;MASTER_LOG_FILE和MASTER_LOG_POS分别对应主服务器当前正在写入的二进制日志文件的名称和位置。

(3)启动复制进程

执行START SLAVE命令启动从服务器的复制进程:

START SLAVE;

在启动复制进程之后,可以使用SHOW SLAVE STATUS命令查看当前复制状态:

SHOW SLAVE STATUS\G;

其中,Slave_IO_State和Slave_SQL_State分别表示复制进程的状态和SQL进程的状态;Seconds_Behind_Master表示从服务器距离主服务器的延迟时间,如果值为0,则表示主从复制已经正常工作。

通过以上步骤,就可以在MySQL 8中实现主从复制配置。需要注意的是,在配置过程中,需要保证主服务器和从服务器之间的网络畅通,同时需要保证主服务器和从服务器的系统时间一致。

责任编辑:姜华 来源: 今日头条
相关推荐

2021-06-08 07:48:27

MySQL主从配置

2023-03-26 22:31:29

2022-12-06 07:53:33

MySQL索引B+树

2024-01-02 12:05:26

Java并发编程

2024-02-04 00:00:00

Effect数据组件

2022-07-13 08:16:49

RocketMQRPC日志

2024-03-01 18:33:59

MySQL节点数据

2024-07-04 08:00:24

2022-04-26 08:41:54

JDK动态代理方法

2023-05-05 06:54:07

MySQL数据查询

2023-06-27 08:00:35

2022-10-24 09:55:32

ESLintJavaScript

2023-03-09 07:38:58

static关键字状态

2023-05-18 09:01:11

MBRGPT分区

2024-08-12 08:12:38

2024-10-12 10:25:15

2024-09-10 10:34:48

2023-11-01 07:28:31

MySQL日志维护

2023-08-01 12:51:18

WebGPT机器学习模型

2023-10-13 09:04:09

点赞
收藏

51CTO技术栈公众号