centos7安装mysql8主从复制

centos7安装mysql8主从复制_第1张图片

1.修改主数据 my.cnf 文件

vim /etc/my.cnf

在 my.cnf 中添加以下内容

# bin log 日志
log-bin=/var/lib/mysql/binlog
# 服务id
server-id=1
#主从复制忽略的数据库
binlog-ignore-db=mysql
binlog-ignore-db=information_schema
#开启主从复制的数据库
binlog-do-db=mydb1
# bin log 日志格式
#STATEMENT:记录主库执行的SQL复制到从库; 调用时间函数时会导致主从数据不一致
#ROW:记录主库每一行的变化;效率低
#MIXED:修复一些主从数据不一致情况;本地变量调用还会存在问题;@@hostname
binlog_format=statement
#二进制日志自动删除/过期的天数。默认值为0,表示不自动删除
expire_logs_days=7
#跳过主从复制中遇到的所有错误或指定类型的错误
slave_skip_errors=1062

2.创建供从库同步数据的用户  并设置权限

CREATE USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
GRANT REPLICATION SLAVE,replication client  ON *.* TO 'slave'@'%';
flush privileges;

centos7安装mysql8主从复制_第2张图片

 配置完重启 mysql 服务

systemctl restart mysqld

3.查看主服务器当前二进制日志名和偏移量(后面会用到)

show master status;

centos7安装mysql8主从复制_第3张图片

4.修改从数据库 my.cnf 文件 

vim /etc/my.cnf

在 my.cnf 中添加以下内容

# 服务id
server-id=2
#启用中继日志
relay-log=mysql-relay

5.使用命令配置从机

CHANGE MASTER TO MASTER_HOST='192.168.168.224', MASTER_USER='slave', MASTER_PASSWORD='123456', MASTER_LOG_FILE='binlog.000004', MASTER_LOG_POS=156;

 6.启动 slave 进程

start slave;

7.查看 slave 状态

看见      Slave_IO_Running: Yes        Slave_SQL_Running: Yes       都为Yes则代表配置成功

show slave status \G;

centos7安装mysql8主从复制_第4张图片

8.测试 

主机mysql中创建一个数据库,查看从服务数据库是否同步生成

create database mydb1;

centos7安装mysql8主从复制_第5张图片

你可能感兴趣的:(MySQL,服务器,centos,mysql)