怎么在MySQL中配置半同步复制

  

今天就跟大家聊聊有关怎么在MySQL中配置半同步复制,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

MySQL安装

通过APT的方式安装,官方指导文档地址:
https://dev.mysql.com/downloads/repo/apt/

1、下载mysql-apt-config_0.8.3-1_all.deb

怎么在MySQL中配置半同步复制

2、安装deb

A Quick Guide to Using the MySQL APT Repository:
https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/

sudo dpkg -i mysql-apt-config_0.8.3-1_all.deb

3、更新源

sudo apt-get update

4、安装MySQL

sudo apt-get install mysql-server

5、根据提示选择安装和设置密码。

另外,还需要对其进行设置,绑定的IP和打开防火墙的3306端口,这里主要是学习MySQL半同步复制,对MySQL的安装不做多解释,如果疑问欢迎留言。

MySQL半同步复制介绍

怎么在MySQL中配置半同步复制

(1)默认情况下,MySQL的复制功能是异步的,异步复制可以提供最佳的性能, 主库把binlog日志发送给从库,这一动作就结束了,并不会验证从库是否接收完毕,这一过程,也就意味着有可能出现当主服务器或从服务器端发生故障的时候,有可能从服务器没有接收到主服务器发送过来的binlog日志,这就会造成主服务器和从服务器的数据不一致,甚至在恢复时造成数据的丢失。

注意:

半同步复制模式必须在主服务器和从服务器端同时开启,否则主服务器默认使用异步复制模式。

(2)异步复制案例:

MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解

(3)为了解决上述可能发生的错误,MySQL 5.5 引入了一种半同步复制模式。该模式可以确保从服务器接收完主服务器发送的binlog日志文件并写入到自己的中继日志relay log里,然后会给主服务器一个反馈,告诉主服务器已经接收完毕,这时主服务线程才返回给当前session告知操作完成。

(4)当出现超时情况是,主服务器会暂时切换到异步复制模式,直到至少有一个从服务器从及时收到信息为止。

(5)中继日志的自我修复:

从MySQL 5.5.X版本开始,增加了<代码> relay_log_recovery> 继电器。日志> relay-log> 大师上获取日志,这样就保证了<代码> relay-log> relay_log_recovery>

(6)半同步复制与异步复制的切换:

半同步复制的工作原理就是当奴隶从库IO_Thread线程将binlog日志接收完毕之后,要给主人主库一个确认,如果<代码> rpl_semi_sync_master_timeout=10000>

<强> MySQL半同步复制配置

首先,需要安装两个MySQL,这里是:

<李>

主:192.168.1.227

<李>

奴隶:192.168.1.224

原始数据库的模样如下:

<强> 怎么在MySQL中配置半同步复制

<强>一、主配置

(1)在主数据库安装半同步复制插件:

mysql> INSTALL  PLUGIN  rpl_semi_sync_master  SONAME  & # 39; semisync_master.so& # 39;;

怎么在MySQL中配置半同步复制

(2)设置的主人上开启半同步复制:

mysql> SET  GLOBAL  rpl_semi_sync_master_enabled =, 1;

怎么在MySQL中配置半同步复制

(3)修改<代码> mysqld.cnf>

怎么在MySQL中配置半同步复制

怎么在MySQL中配置半同步复制