MyCat | 读写分离

  • MySQL
  • 2021-05-11 23:03:06
  • 浏览 281
简介做事有始有终值得开始的事就值得完成。聪明人做事总是有始有终

schema.xml 配置

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://io.mycat/">

    <schema name="mysql" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn_mysql"></schema>
    <schema name="cloud_advert" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn_advert"></schema>
    <schema name="cloud_hotel" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn_hotel"></schema>
    <schema name="cloud_scenic" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn_scenic"></schema>

    <dataNode name="dn_mysql" dataHost="host_mysql" database="mysql" />
    <dataNode name="dn_advert" dataHost="host_mysql" database="cloud_advert" />
    <dataNode name="dn_hotel" dataHost="host_mysql" database="cloud_hotel" />
    <dataNode name="dn_scenic" dataHost="host_mysql" database="cloud_scenic" />


    <dataHost name="host_mysql" maxCon="1000" minCon="10" balance="3" writeType="0" dbType="mysql" dbDriver="native" switchType="1"  slaveThreshold="100">
        <heartbeat>select user()</heartbeat>
        <writeHost host="hostM1" url="10.249.1.251:3306" user="root" password="123456">
            <readHost host="hostS1" url="10.249.1.254:3306" user="root" password="123456" />
        </writeHost>
    </dataHost>



</mycat:schema>

注意: schema dataNode dataHost 多个必须按照顺序写在一起,读写分离需要提前配置好 MySQL 的主从模式,balance=”3” 适用单主单从模式。

server.xml 配置

<user name="root" defaultAccount="true">
        <property name="password">123456</property>
        <property name="schemas">mysql,cloud_advert,cloud_hotel,cloud_scenic</property>        
        <property name="defaultSchema">mysql</property>
</user>

注意:多个 schemas 使用逗号分隔

文章评论