CentOS-7 MySQL5.7.31 配置主从复制

Posted 这次应该行吧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS-7 MySQL5.7.31 配置主从复制相关的知识,希望对你有一定的参考价值。

1、环境准备

  两台CentOS-7主机:node1(主):192.168.137.128,node2(从):192.168.137.129

  两台主机均已安装mysql5.7.31 ,且网络互通

2、配置过程

主从原理大致有三个步骤:

  • 在主库上把数据更改记录到二进制日志中(Binary Log)中,这些记录称为二进制日志事件。
  • 从库通过IO线程将主库上的日志复制到自己的中继日志(Relay Log)中。
  • 从库通过SQL线程读取中继日志中的事件,将其重放到自己数据上。

  配置文件确定

配置主库:

修改my.cnf 文件,在[mysqld] 段下添加:

# 服务id
server-id = 1
# 开启mysql binlog功能
log-bin = mysql-bin
# binlog模式
binlog_format = MIXED

配置好后重启mysql服务

[root@swarm-node1 mysql]# cd support-files/
[root@swarm-node1 support-files]# ls
magic  mysqld_multi.server  mysql-log-rotate  mysql.server
[root@swarm-node1 support-files]# ./mysql.server restart

 

 检查data目录是否有binlog日志生成

登录主数据库,新建一个复制账号

[root@swarm-node1 bin]# ./mysql -S/usr/local/mysql/mysql.sock -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \\g.
Your MySQL connection id is 3
Server version: 5.7.31-log MySQL Community Server (GPL)

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type \'help;\' or \'\\h\' for help. Type \'\\c\' to clear the current input statement.

mysql> 
mysql> grant replication slave on *.* to \'cpp\'@\'%\' identified by \'123.com\';
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> 

配置从库:

修改my.cnf 文件,在[mysqld] 段下添加:

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

修改完后重启MySQL

登录从数据库,配置主从

在从库上指定主库地址,以及 同步账号、密码,并启动同步

mysql> 
mysql> 
mysql> change master to master_host=\'192.168.137.128\',master_user=\'cpp\',master_password=\'123.com\';
Query OK, 0 rows affected, 2 warnings (0.01 sec)

mysql> start slave;
Query OK, 0 rows affected (0.00 sec)

mysql> 
mysql> 

 show slave status\\G;   查看从库状态,查看Slave_IO_Running: Yes和 Slave_SQL_Running: Yes 为yes主从配置完成

 如果启动同步后,第一个为Connecting,第二个为Yes,大部分为连接问题,请检查网络是否通,配置的用户名密码是否正确

 

以上是关于CentOS-7 MySQL5.7.31 配置主从复制的主要内容,如果未能解决你的问题,请参考以下文章

MySQL5.7.31忘记密码的解决方案

手记!CentOS7.6安装MySQL5.7.31

CentOS-7.5 配置 MySQL-5.7 双主复制

centos 7 配置 mysql 5.7 主从复制

CentOS 7 配置静态 IP

centos 7.0双网卡主备和负载均衡模式配置(bond0)