2021.09.11 [MySQL 主从复制]完整步骤

数据库版本:mysql 8.0

一、准备工作:

1、两个数据库的数据要一致
2、关闭防火墙

二、开始

1、修改主(MASTER)数据库

vi /etc/my.cnf
  • 添加以下内容
server_id=31  ###服务器id,推荐使用ip最后数字
log-bin=mysql-bin   ###开启日志文件
  • 重启数据库
service mysqld restart
  • 检查server_id是否修改成功
SHOW VARIABLES LIKE 'server_id';
  • 查询主数据库状态:
show master status;

备注 :
Position为行号,File 一会需要同步的文件。如果结果为null,则主服务器my.cf没有配置好。

  • 创建专门用于主从复制的账号
create user 'TEST'@'%' identified by 'aabbccdd';
  • 分配权限
GRANT REPLICATION SLAVE ON *.* TO 'TEST'@'%' WITH GRANT OPTION;

2、修改从(SLAVE)数据库

vi /etc/my.cnf
  • 添加以下内容
server_id=32 ###服务器id,推荐使用ip最后数字
log-bin=mysql-bin   ###开启日志文件
  • 重启数据库
service mysqld restart
  • 检查server_id是否修改成功
SHOW VARIABLES LIKE 'server_id';
  • 开启主从复制
STOP SLAVE;

CHANGE REPLICATION SOURCE TO SOURCE_HOST = '127.0.0.1',
SOURCE_PORT = 3306,
SOURCE_USER = 'root',
SOURCE_PASSWORD = 'xxxxxxxx',
SOURCE_LOG_FILE = 'mysql-bin.000020',
SOURCE_LOG_POS = 1837611;

START SLAVE;

备注:
SOURCE_LOG_FILE 、SOURCE_LOG_POS 需要和主数据库的File 、Position一致

  • 检查从服务器复制功能状态
SHOW SLAVE STATUS;

若Slave_IO_Running Slave_SQL_Running是Yes 则成功

你可能感兴趣的:(2021.09.11 [MySQL 主从复制]完整步骤)