centos7下mysql8.0主从同步
两个数据库,一主一从,主:172.16.1.1,从:172.16.1.2
一、 配置主数据库
1.修改my.cnf文件
vi /etc/my.cnf
在my.cnf文件中加入如下配置内容:
log-bin=mysql-bin
server-id=1
2.创建用于主从同步的用户
CREATE USER ‘copy’@‘172.16.1.2’ IDENTIFIED WITH mysql_native_password BY ‘test1’;
(注意:@后面跟的是从数据库的IP地址)
授予同步权限:
GRANT REPLICATION SLAVE ON * .* TO ‘copy’@‘172.16.1.2’;
刷新权限列表:
flush privileges;
3.获取主节点当前binary log文件名和位置(position)
show master status;
二、从数据库配置
1.vi /etc/my.cnf
在my.cnf文件中加入如下配置内容
[mysqld]
server-id=2
2.设置主节点参数
change master to master_host=‘172.16.1.1’,master_user=‘copy’,master_password=‘test1’,master_log_file=‘mysql-bin.000003’,master_log_pos=854;
(master_log_file,master_log_pos的参数参照上面主数据库查出来的数据)
开启主从同步:
mysql> start slave;
3.查看主从状态
mysql> show slave status\G;
(主要查看这两个参数,如果Slave_IO_Running显示Connecting,则表示主从没联通,检查上面步骤是否正确)