Centos7+Mysql5.7实现主从复制

一、Master主服务器配置(192.168.30.201)

找到mysql配置文件my.cnf在末尾加上:
find / -name my.cnf

log-bin=mysql-bin #slave会基于此log-bin来做replication 
server-id=1 #master的标示 
innodb_flush_log_at_trx_commit=1 
sync_binlog=1

重启
systemctl restart mysqld

mysql -u root -p
mysql>grant replication slave on . to ‘admin’ @’192.168.30.%’ identified by ‘Abc123///’; #创建从服务器用到的账户和权限:

重启
systemctl restart mysqld

mysql -u root -p
show master status;
这里写图片描述

二、Slave从服务器配置(192.168.30.202)
找到mysql配置文件my.cnf在末尾加上:
server-id=2 #slave的标示 ,192.168.30.202配置

Slave从服务器,连接Master主服务器:

change master to master_host='192.168.30.201',master_port=3306,master_user='admin',master_password='Abc123///',master_log_file='master-bin.000001',master_log_pos=351;

备注:master_host对应主服务器的IP地址,master_port对应主服务器的端口,master_log_file对应show master status显示的File列:master-bin.000001,master_log_pos对应Position列:351,否则有可能出现同步失败。

重启
systemctl restart mysqld

start slave;
show slave status\G;
这里写图片描述
备注:Slave_IO_Running和Slave_SQL_Running都为yes才表示同步成功。

三、测试:
这里写图片描述

这里写图片描述

同步成功。

遇到问题:Slave_IO_Running为 NO
这时可通过以下方法来处理:

方法一:(重置slave)

slave stop;

reset slave;

slave start;

方法二:(重设同步日志文件及位置)

1、查看slave状态
show slave status\G

        Master_Log_File: mysql-bin.000040
    Read_Master_Log_Pos: 4
         Relay_Log_File: mysqld-relay-bin.000001
          Relay_Log_Pos: 98
  Relay_Master_Log_File: mysql-bin.000040
       Slave_IO_Running: No
      Slave_SQL_Running: Yes

目前已同步到mysql-bin.000040这个日志文件,98的位置;

2、暂停slave
slave stop;

3、修改同步日志文件及位置;
日志文件及位置都改小;(之前是同步正常,最近才出现问题的,一般改小一个值就好)
如:
change master to master_log_file=’mysql-bin.000039’, master_log_pos=1;

4、启动slave
slave start;

5、再次确认slave状态
show slave status\G
这时会发现:
Slave_IO_Running: Yes
且下述两个值一直在不断变化中:
Relay_Log_Pos: 998875
Relay_Master_Log_File: mysql-bin.000048

如果Slave_IO_Running: No,则继续第2、3、4步,把3步中的值再改小;如此反复。。。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值