zoukankan      html  css  js  c++  java
  • 基于Mysql-Proxy实现Mysql的主从复制以及读写分离(下)

    基于Mysql-Proxy实现Mysql的主从复制以及读写分离(下)

      昨天谈到了Mysql实现主从复制,但由于时间原因并未讲有关读写分离的实现,之所以有读写分离,是为了使数据库拥有双机热备功能,至于双机热备,特指基于高可用系统中的两台服务器的热备(或高可用),因两机高可用在国内使用较多,故得名双机热备,双机高可用按工作中的切换方式分为:主-备方式(Active-Standby方式)和双主机方式(Active-Active方式),主-备方式即指的是一台服务器处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态)。而双主机方式即指两种不同业务分别在两台服务器上互为主备状态(即Active-Standby和Standby-Active状态)。接下来开始使用Mysql-Proxy实现读写分离。

    环境

      系统:CentOS6.5

      Master:172.16.19.2

      Slave:172.16.19.24

      mysql-proxy:172.16.19.14

      安装就不说了,基本都是yum install进行安装的。和昨天的一样(其实就是接着昨天的来~)。

    读写分离的实现

      首先,在第三台服务器安装mysql-proxy:yum install mysql-proxy。

      然后修改配置文件:

     1 [mysql-proxy]
      2 daemon = true   #以后台守护进程方式启动
      3 pid-file = /var/run/mysql-proxy.pid
      4 log-file = /var/log/mysql-proxy.log
      5 log-level = debug  #设置日志级别为debug,可以在调试完成后改成info
      6 max-open-files = 1024
      7 plugins = admin,proxy
      8 user = mysql-proxy
      9 #
     10 #Proxy Configuration
     11 proxy-address = 0.0.0.0:3307    #指定mysql-proxy的监听地址
     12 #proxy-address = 172.16.19.24:4040
     13 #proxy-backend-addresses = localhost:3306  
     14 proxy-backend-addresses = 172.16.19.2:3306   #设置后台主服务器:主服务器,master可读写
     15 proxy-read-only-backend-addresses = 172.16.19.24:3306   #设置后台从服务器:从服务器,slave,只读
     16 proxy-lua-script = /usr/lib64/mysql-proxy/lua/rw-splitting.lua    #设置读写分离脚本路径,可在官网下载mysql-proxy包,解压后
     17 #proxy-skip-profiling = true
     18 #
     19 # Admin Configuration
     20 #admin-address = 0.0.0.0:4041
     21 admin-lua-script = /usr/lib64/mysql-proxy/lua/admin.lua  #设置管理后台lua脚本路径,改脚本默认没有要自动定义
     22 admin-username = root     #设置登录管理地址用户
     23 admin-password = 123456    #设置管理用户密码

       设置完成后,即可执行:service mysql-proxy start启动服务。 

      使用mysql -uroot -p -h172.16.19.14 --port=3307进入数据库查看或更改数据库。

      使用mysql -uroot -p -h172.16.19.14 --port=4041进入数据库管理数据库。

      若没有用户通过mysql-proxy连接到后端,则状态为unknown,否则的话为up。至此,mysql 的主从复制以及读写分离就实现了。

    PS:本博客欢迎转发,但请注明博客地址及作者,因本人水平有限,若有不对之处,欢迎指出,谢谢~

      博客地址:http://www.cnblogs.com/voidy/

      博客新址:http://voidy.net

      <。)#)))≦

     

  • 相关阅读:
    通过HttpListener实现简单的Http服务
    WCF心跳判断服务端及客户端是否掉线并实现重连接
    NHibernate初学六之关联多对多关系
    NHibernate初学五之关联一对多关系
    EXTJS 4.2 资料 跨域的问题
    EXTJS 4.2 资料 控件之Grid 那些事
    EXTJS 3.0 资料 控件之 GridPanel属性与方法大全
    EXTJS 3.0 资料 控件之 Toolbar 两行的用法
    EXTJS 3.0 资料 控件之 combo 用法
    EXTJS 4.2 资料 控件之 Store 用法
  • 原文地址:https://www.cnblogs.com/voidy/p/4387544.html
Copyright © 2011-2022 走看看