使用之前,确保主服务器和从服务器的数据一样,要不然在同步过程会出问题

一、主服务器

1.首先要开启bin-log,8.0是默认开启的

//查看是否已经开启的方法
show variables = "log_bin";

在这里插入图片描述






2.在服务器配置文件设置server-id
server-id可以随便设置,但不能和从服务器相同

[mysqld]

server-id=254

在这里插入图片描述

3.创建一个数据库账号,供从服务器使用

//创建用户
create user slave identified by "a123456";
//给该用户授replication slave权限
grant replication slave on *.* to slave;

4.重启mysql

二、从服务器

1.在配置文件设置一个server-id
2.查询主服务器的bin-log状态
在这里插入图片描述

3.执行sql语句

CHANGE MASTER TO 
MASTER_HOST = '47.107.117.80',  
MASTER_USER = 'slave', 
MASTER_PASSWORD = '密码',
MASTER_PORT = 3306,
MASTER_LOG_FILE='binlog.000016',
MASTER_LOG_POS=338;

4.重启mysql

维护常用操作

show slave status \G//从服务器使用,用于查看同步状态

show slave hosts//主服务器使用,用于查看有哪些从服务器

show master status//查看bin-log状态

show binary logs//查看bin-log文件列表
stop slave //停止同步
start slave //启动
show master logs //查看bin-log文件列表

[mysqld]
#在从服务器设置。指定只同步某个数据库,如有多个,可以重复设置。不设则同步全部
replicate-do-db=zzz

#在从服务器设置。指定只同步某个数据库的某个表,如有多个,可以重复设置。不设则同步全部
replicate-do-table=db.tb
Logo

更多推荐