ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL主从同步(三)——M-S-S架构配置实战

2021-12-28 23:05:07  阅读:201  来源: 互联网

标签:中继 Slave 配置 slave master MySQL 架构 主从


今天继续给大家介绍MySQL相关知识,本文主要内容是MySQL主从同步的M-S-S架构配置实战。
阅读本文,您需要对MySQL主从同步有一定的基础,如果您对此还存在困惑,欢迎查阅我博客内其他文章,相信您一定会有所收获!相关文章链接:
MySQL主从同步(一)——原理详解
MySQL主从同步(二)——M-S架构配置实战

一、实战环境

本次实验,我们使用三台Vmware虚拟机,来实现MySQL主从同步的M-S-S架构配置,各机器IP地址如下:
Master主库:192.168.136.101
Slave中继:192.168.136.201
Slave从库:192.168.136.120
三个MySQL数据库版本都是5.5.68,其余均是默认配置。

二、实验原理

在MySQL主从同步的M-S-S架构中,原理与开头文章推荐处的基本原理是相同的,但是其独有的问题在于Slave中继的作用。在M-S-S架构中,Slave中继的作用是缓解Master主库设备的压力,但是Slave中继设备本身并不存储数据,这一点可以人为将Slave中继的数据表配置成blackhole黑洞引擎模式,在该模式下,所有的数据并不会被数据库所存储。同时,还要注意对该数据表引擎的修改不要记录到二进制日志中。Slave中继在I/O进程从Master主库抓取数据后,虽然不会写入自身的数据库中,但是必须要写到自己的二进制日志中,这样,其他的Slave从库设备即可以从该Slave中继设备的二进制日志中得到数据库的信息了。

三、实验配置

下面,我就进行实际配置。

(一)主库配置

对于主库而言,首先需要配置的是/etc/my.cnf配置文件,需要在配置文件中写入内容如下:

log-bin=master-log
server-id=1
binlog-do-db= rep
binlog-ignore-db=mysql
sync-binlog=1
binlog-format=row

写入后,文件如下所示:
在这里插入图片描述
接下来,我们需要启动(重启)Mariadb数据库,重启并登录后,需要对数据库进行授权操作,相关SQL命令如下所示:

grant replication slave on *.* to 'rep_slave'@192.168.136.201 identified by '123456';

这样,主库就已经配置完成了。

(二)Slave中继配置

对于从库而言,需要配置/etc/my.cnf主配置文件如下:

server-id=2
log-bin=slave-relay-log
log-slave-updates=1
binlog-format=row

配置完成后,主配置文件如下所示:
在这里插入图片描述
对于Slave中继而言,在完成配置文件配置、启动(重启)并登录数据库后,需要做三件事:配置对Master主库的主从同步、授权Slave从库对自身的主从同步和自身的blackhole引擎设置。
配置对master主库的主从同步SQL语句如下:

change master to 
master_host='192.168.136.101',
master_user='rep_slave',
master_password='123456';

授权Slave从库对自身的主从同步SQL语句如下:

grant replication slave on *.* to 'rep_slave'@'192.168.136.%' identified by '123456';

配置自身的blackhole引擎SQL语句如下:

set sql_log_bin=off;
alter table exp ENGINE=blackhole;
set sql_log_bin=on;

由于该过程不能被记录进入二进制日志,因此在进行这一步操作时,必须合理的设置sql_log_bin参数。
相关配置过程如下所示:
在这里插入图片描述
在这里插入图片描述

(三)Slave从库配置

对于Slave从库,在/etc/my.cnf主配置文件中,只需要写入如下内容:

server-id=3
log-bin=slave-binlog
binlog-format=row

完成后的主配置文件如下所示:
在这里插入图片描述
在完成配置后,需要配置Slave从库设备对Slave中继的主从同步,相关SQL命令如下:

change master to 
master_host='192.168.136.201',
master_user='rep_slave',
master_password='123456';

这样,当上述所有配置都完成后,我们的MySQL主从同步M-S-S架构就已经配置完成了。

四、效果验证

接下来,我们对我们配置的架构效果进行验证。

(一)slave中继上没有数据

在这里插入图片描述

(二)Slave从库上有数据

在这里插入图片描述

(三)在slave从库上查看slave状态

在这里插入图片描述

(四)在slave中继上查看slave状态

在这里插入图片描述

(五)在master主库设备上查看master状态

在这里插入图片描述

(六)在slave中继设备上查看master状态

在这里插入图片描述
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

标签:中继,Slave,配置,slave,master,MySQL,架构,主从
来源: https://blog.csdn.net/weixin_40228200/article/details/122193766

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有