MySQL主从复制

geteshi
2023-01-11 / 1 评论 / 20 阅读 / 正在检测是否收录...

MySQL主从复制

配置信息

MySQL 8.0

centos7.9

主:192.168.2.20

从:192.168.2.12

开始配置

1. 配置主服务器

首先在/etc/my.cnf进行配置,同步多个就放多个binlog-go-db

image-20230111114705817

2. 创建一个同步的用户

Create user 'rep'@'192.168.2.%' identified by '123';
grant replication slave on *.* to 'rep'@'192.168.2.%';
flush privileges;

3. 查看主服务器的状态

我只同步huaeb这个库,记住file和position这两个值

image-20230111114853595

从服务器配置

搭建MySQL那些就不说了,和上面一样,配置/etc/my.cnf进行配置,同步多个就放多个binlog-go-db

1. 配置文件

这里server-id不能一样,最好用IP的后缀,以防重复

image-20230111115037957

2. 把主服务器的数据库复制过来

这里我只同步huaeb这个数据库,所以只把这个库的数据弄过去

3. 创建同步信息

# 最开始不用关闭
stop slave;

# 创建同步信息
CHANGE MASTER TO 
MASTER_HOST='192.168.2.20',                 # 主服务器的IP
MASTER_USER='rep',                          # 主服务器创建的同步用户
MASTER_PORT=3306,                           # 主服务器端口
MASTER_PASSWORD='123',                      # 用户密码
MASTER_LOG_FILE='mysql-bin.000015',         # 主服务器上刚刚记住的file
MASTER_LOG_POS=17674;                       # 主服务器刚刚记住的position

# 开始同步
start slave;
# 查看同步状态
show slave status\G;

两个都为yes则为成功

image-20230111115430445

TIP

从服务器配置前最好用命令登录一下主服务器的数据库,看能否登录

如果从服务器没有这个数据库也会同步失败

0

评论 (1)

取消
  1. 头像
    geteshi 作者
    Windows 10 · Google Chrome

    画图

    回复