配置——主库(Master)

第一步:修改MySql数据库的配置文件/etc/my.cnf

[mysqld]
log-bin=mysql-bin # [必须]启用二进制日志
server-id=100 # [必须]服务器唯一ID

第二步:重启MySql服务

systemctl restart mysqld

第三步:登录MySql数据库,执行SQL语句

  • 创建一个用户,密码
  • 为用户授予 REPLICATION SLAVE 权限
-- 创建用户
create user 'username'@'%' identified by 'password';

-- 授权
grant replication slave on *.* to 'username'@'%';

-- 刷新权限
flush privileges;

第四步:执行下面SQL语句,记录结果中的FilePosition的值

观察Master的状态

show master status;

image-20231030142413410

配置——从库(Slave)

第一步:修改MySql数据库的配置文件/etc/my.cnf

[mysqld]
server-id=101 #[必须]服务器唯一ID

第二步:重启MySql服务

systemctl restart mysqld

第三步:执行SQL语句

change master to
master_host='master服务ip地址',
master_user='master中设置的用户名',
master_password='master中设置的密码',
master_log_file='master状态表中的File字段',
master_log_pos='master状态表中的Position字段',
get_master_public_key=1; # mysql(8)之后的版本加入

# 开启slave
start slave

第四步:查看slave状态

show slave status;