centos7搭建mysql主从_Centos7.7搭建Mysql主从复制

26f42da94355ab2906cb0f1e731c99c8.png

主从复制的原理:

分为同步复制和异步复制,实际复制架构中大部分为异步复制。 复制的基本过程如下:

1).Slave上面的IO进程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容;

2).Master接收到来自Slave的IO进程的请求后,通过负责复制的IO进程根据请求信息读取制定日志指定位置之后的日志信息,返回给Slave 的IO进程。返回信息中除了日志所包含的信息之外,还包括本次返回的信息已经到Master端的bin-log文件的名称以及bin-log的位置;

3).Slave的IO进程接收到信息后,将接收到的日志内容依次添加到Slave端的relay-log文件的最末端,并将读取到的Master端的 bin-log的文件名和位置记录到master-info文件中,以便在下一次读取的时候能够清楚的告诉Master“我需要从某个bin-log的哪个位置开始往后的日志内容,请发给我”;

4).Slave的Sql进程检测到relay-log中新增加了内容后,会马上解析relay-log的内容成为在Master端真实执行时候的那些可执行的内容,并在自身执行。

环境描述

操作系统:CentOS7.7

数据库版本:server version 5.6.47

主服务器master:192.168.33.140

从服务器slave:192.168.33.141

1.两台服务器都安装mysql源

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2.两台服务器安装mysql

yum -y install mysql-server

3.启动mysql并加入开机启动,关闭防火墙和selinux.

systemctl start mysqld

systemctl enable mysqld

systemctl stop firewalld

systemctl disable firewalld

4.更改my.cnf配置文件

[mysqld]

server-id = 1log-bin = mysql-bin

binlog_format=mixed

binlog-ignore-db =mysql,information_schema #忽略写入binlog日志的库

auto-increment-increment = 2#字段变化增量值

auto-increment-offset = 1#初始字段ID为1

slave-skip-errors = all

[mysqld]

server-id = 2log-bin = mysql-bin

binlog_format=mixed

binlog-ignore-db =mysql,information_schema

auto-increment-increment = 2auto-increment-offset = 2slave-skip-errors = all

5.重启mysql服务

systemct restart mysqld

6.在mysql主服务器创建允许从服务器同步数据的账户

用户授权数据同步

GRANT REPLICATION SLAVE ON*.* TO 'replication'@'192.168.33.141' IDENTIFIED BY 'replication';

刷新权限

flush privileges;

7.查看主服务器状态

show master status\G

8.在mysql从服务器授权同样的用户和登录

数据同步授权

GRANT REPLICATION SLAVE ON*.* TO 'replication'@'192.168.33.140' IDENTIFIED BY 'replication';

刷新权限

flush privileges;

9.从服务器开启同步

start slave;

10.在mysql从服务器执行同步命令(其中的ip地址,用户名,密码,mysql-bin.00000x还有log_pos要根据自己真实环境更改)

change master to master_host='192.168.33.140',master_user='replication',master_password='replication',master_log_file='mysql-bin.000004',master_log_pos=711;

11.查看从服务器状态(其中从服务器的Slave_IO_Running及Slave_SQL_Running进程必须正常运行,必须是双Yes状态,如果不是则同步失败)

show slave status\G

12.在主服务器创建数据库,表,插入数据进行验证!!!!!!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值