mysql的主从配置沿用上一篇博客的配置:https://www.cnblogs.com/MasterSword/p/9434169.html

mycat下载地址:http://www.mycat.io/

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

试验版本:Mycat-server-1.6-release 

# cd /usr/local
# mv ~/Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz /usr/local
# tar -zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz
# cd /usr/local/mycat/conf/
# vim server.xml 查看mycat用户的默认配置

<!-- mycat的默认用户配置,保持不变即可 -->
<user name="root">
  <property name="password">123456</property>
  <property name="schemas">TESTDB</property>
</user>

  # vim schema.xml 修改schema配置读写分离

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">
  <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100">
    <!-- 设置物理表 -->
    <table name="student" dataNode="dn1" />
  </schema>
  <!-- 设置物理库 -->
  <dataNode name="dn1" dataHost="localhost1" database="test" />  
    <!-- balance=1设置为读写分离 -->
    <dataHost name="localhost1" maxCon="1000" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
    <heartbeat>select user()</heartbeat>
    <!-- 读库配置 -->
    <writeHost host="hostM1" url="xxx.xxx.xxx.xxx:3306" user="root" password="xxxxxx">
      <!-- 读库配置,可配置多个读库 -->
      <readHost host="hostS2" url="xxx.xxx.xxx.xxx:3316" user="root" password="xxxxxx" />
    </writeHost>
  </dataHost>
</mycat:schema>

# cd ../bin
# ./mycat start 启动mycat
# ps -aux | grep mycat 查看mycat是否启动成功

在客户端新建一个链接到mycat的数据库连接,用户名密码为server.xml中配置的用户

通过mycat实现mysql的读写分离 Mysql 第1张  

连接中库为TESTDB,也是在server.xm中配置的

通过mycat实现mysql的读写分离 Mysql 第2张

下面验证读写分离

mycat:通过mycat实现mysql的读写分离 Mysql 第3张

写库:通过mycat实现mysql的读写分离 Mysql 第4张

读库:通过mycat实现mysql的读写分离 Mysql 第5张

修改读库的数据:通过mycat实现mysql的读写分离 Mysql 第6张

mycat中的数据和读库数据一致:通过mycat实现mysql的读写分离 Mysql 第7张

停止读库的服务:通过mycat实现mysql的读写分离 Mysql 第8张

mycat插入一条数据:通过mycat实现mysql的读写分离 Mysql 第9张

写库中存在插入的数据:通过mycat实现mysql的读写分离 Mysql 第10张

 

至此通过mycat实现mysql的读写分离配置成功。

ps.mycat最大的功能在于对数据库分片的处理,如果有机会,以后会进行相关的试验。

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄