1、配置主服务器
在主服务器上进行以下操作:
(1)开启二进制日志
打开MySQL配置文件 my.cnf,在 [mysqld] 段下添加如下行:
log-bin 指定二进制日志文件的名称,mysql-bin是默认的二进制日志前缀,后面会跟一个数字标识。如果不指定则使用默认名称。
(2)创建复制用户
创建用于从服务器复制数据的用户,比如repl。打开MySQL控制台,执行如下命令:
在创建用户时,可以指定用户的IP地址和密码。在授予权限时,需要授予REPLICATION SLAVE权限。
2、配置从服务器
在从服务器上进行以下操作:
(1)开启复制功能
打开MySQL配置文件 my.cnf,在 [mysqld] 段下添加如下行:
server-id 是唯一标识从服务器的ID,必须保证主服务器和从服务器的server-id不同。
(2)连接主服务器
在从服务器上使用CHANGE MASTER TO命令连接到主服务器,并设置主服务器的IP地址、端口号、用户名、密码、当前正在写入的二进制日志文件的名称和位置。例如:
其中,MASTER_HOST、MASTER_PORT、MASTER_USER和MASTER_PASSWORD分别对应主服务器的IP地址、端口号、用户名和密码;MASTER_LOG_FILE和MASTER_LOG_POS分别对应主服务器当前正在写入的二进制日志文件的名称和位置。
(3)启动复制进程
执行START SLAVE命令启动从服务器的复制进程:
在启动复制进程之后,可以使用SHOW SLAVE STATUS命令查看当前复制状态:
其中,Slave_IO_State和Slave_SQL_State分别表示复制进程的状态和SQL进程的状态;Seconds_Behind_Master表示从服务器距离主服务器的延迟时间,如果值为0,则表示主从复制已经正常工作。
通过以上步骤,就可以在MySQL 8中实现主从复制配置。需要注意的是,在配置过程中,需要保证主服务器和从服务器之间的网络畅通,同时需要保证主服务器和从服务器的系统时间一致。