码迷,mamicode.com
首页 > 数据库 > 详细

Mysql实现企业级主从复制和互为主从模式架构

时间:2017-11-27 23:35:19      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:mysql

 在实现mysql的多种模式前提下,首先先介绍一下mysql是如何工作的。

  大概网络拓扑图如下:

  技术分享图片 

  1、该过程的第一部分就是master记录二进制日志。在每个事务更新数据完成之前,master在二进制日志记录这些改变。MySQL将事务串行的写入二进制日志,在事件写入二进制日志完成后,master通知存储引擎提交事务。此后可接收slave的请求。

  2、下一步就是slave将master的binary log拷贝到它自己的中继日志。首先,slave开始一个工作线程——I/O线程。I/O线程在master上打开一个普通的连接,然后开始在主节点上binlog dump process(二进制转存线程)。Binlog dump process从master的二进制日志中读取事件,如果已经跟上master,它会睡眠并等待master产生新的事件。I/O线程将这些事件写入中继日志。

  3、SQL slave thread(SQL从线程)处理该过程的最后一步。SQL线程从中继日志读取事件,并重放其中的事件而更新slave的数据,使其与master中的数据一致。只要该线程与I/O线程保持一致,中继日志通常会位于OS的缓存中,所以中继日志的开销很小。

  一、主从复制模式。

  1、环境准备:

  centos系统服务器2台、一台用户做Mysql主服务器(172.17.110.111),一台用于做Mysql从服务器(172.17.38.39),配置好yum源、防火墙关闭、各节点时钟服务同步、各节点之间可以通过主机名互相通信。

  2、准备步骤:

  (1)iptables -F && setenforce 清空防火墙策略,关闭selinux

  (2)拿两台服务器都使用yum方式安装Mysql服务,要求版本一致

  (3)分别启动两台服务器mysql服务,确保服务正常

  ①配置master的主配置文件。

  技术分享图片

  ②启动服务,创建复制账号,对slave进行授权。

  技术分享图片  还可以查看二进制文件,查看更新的事物。

  技术分享图片  ③配置slave的主配置文件

  技术分享图片

  ④让slave连接master,读取master的二进制日志更新的事物。

  技术分享图片


  技术分享图片

  二、实现互为主从框架。

  ①修改配置文件(172.17.110.111服务器)

  技术分享图片 


  两个服务器配置文件除了id不一样,其它都一样(172.17.38.39服务器)。

  技术分享图片

  ②双方相互授权,即彼此即使对方的主也是对方的从。

  在(172.17.38.39服务器)指向(172.17.110.111),并查看状态

  技术分享图片 


  技术分享图片

  在172.17.110.111服务器,指向(172.17.38.39),查看状态。

  技术分享图片

  ③测试。

  在(172.17.110.111服务器)创建一个数据库,里面存放内容。在(172.17.38.39服务器)上查看是否同步。

  技术分享图片


  技术分享图片  

  在在(172.17.38.39服务器)创建一个数据库,里面存放内容。在(172.17.110.111服务器)上查看是否同步。

  技术分享图片


  技术分享图片


Mysql实现企业级主从复制和互为主从模式架构

标签:mysql

原文地址:http://blog.51cto.com/19940919/2044865

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!