当前位置:   article > 正文

Mysql 5.7 主从复制(一主一从)搭建_mysql 5.7 一主一备

mysql 5.7 一主一备

1.修改主库配置文件

#开启二进制日志
log-bin=/var/lib/mysql/mysql-bin 
#⽇日志中会记录成每⼀一⾏行行数据被修改的形式】 
binlog-format=ROW
# 二进制日志自动删除的天数。一般将x设置为短点,如10,默认值为0,表示“没有自动删除”
expire_logs_days = 10
##指定当前机器器的服务ID(如果是集群,不不能重复,可设置为ip的最后位)】
server_id=11

# 不同步哪些数据库  
binlog-ignore-db = mysql  
binlog-ignore-db = information_schema  
  
# 只同步哪些数据库,除此之外,其他不同步  
# binlog-do-db = test
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

2 重启主库MySQL服务

systemctl restart mysqld
  • 1

3 为从库创建用于复制的用户,并赋权

  1. 创建用户
CREATE USER 'repl@12'@'192.168.91.12' IDENTIFIED BY 'Repl123.';
  • 1
  1. 为用户赋权
GRANt REPLICATION SLAVE ON *.* TO 'repl@12'@'192.168.91.12';
  • 1
  1. 刷新权限
 flush privileges;
  • 1

4 查看主库状态

SHOW MASTER STATUS;
  • 1

在这里插入图片描述

5 修改从库的配置文件

# 设置server-id 不能与主库的server-id一样,可设置为从库服务器ip的最后一位
server-id=110 #设置server-id,192.168.0.110
  • 1
  • 2

6 重启从库

systemctl restart mysqld
  • 1

7 进入从库,设置用于同步的主库的host 用户名、密码 二进制文件的位置

# MASTER_LOG_FILE 与 MASTER_LOG_POS 通过 在主库中执行 SHOW MASTER STATUS;来查看
CHANGE MASTER TO MASTER_HOST='192.168.91.11', MASTER_USER='repl@12', MASTER_PASSWORD='Repl123.', MASTER_LOG_FILE='mysql-bin.000003', MASTER_LOG_POS=777;
  • 1
  • 2

8 开启从库的同步模式

start slave;
  • 1

如果 Slave_IO_Running和Slave_SQL_Running均为Yes,则表示主从复制搭建成功
在这里插入图片描述

如果出现 Slave_IO_Running: Connecting,可能是主库的防火墙未关闭,需要关闭主库的防火墙,或者开放MySQL服务的端口
Sla,ve_IO_Running:
如果出现 下面的错误,原因是克隆了服务器,两台MySQL服务的uuid重复了,解决方案只需要把从库的auto.cnf删除,然后重启MySQL服务即可
1.进入MySQL数据目录

cd /var/lib/mysql
  • 1

2 删除auto.cnf;

rm -rf auto.cnf 
  • 1

3 重启MySQL服务

systemctl restart mysqld
  • 1

在这里插入图片描述

9 测试

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/1008792
推荐阅读
相关标签
  

闽ICP备14008679号