Mycat+Pxc的配置

1 schema.xml配置文件

  • Balance属性

负载均称类型

0:不开启读写分离机制,所有读操作都发送到当前可用的writeHost上

1:全部的readHost与stand by writeHost参与select语句的负载均衡,简单的说,当双主双从模式(M1-S1,M2-S2 并且M1 M2互为主备),正常情况下,M2,S1,S2都参与select语句的负载均衡。

2:所有读操作都随机的在writeHost、readHost上分发

3:所有读请求随机的分发到writeHst对应的readHost执行,writeHost不负担读写压力。

  • SwitchType属性

-1不自动切换

1  默认值 自动切换

2  基于MySql主从同步的状态决定是否切换

心跳语句为 show slave status

3  基于mysql galary cluster 的切换机制(适合集群)1.4.1

心跳语句为 show status like 'wsrep%'

[root@mycat conf]# cat schema.xml 
<?xml version="1.0"?> 
<!DOCTYPE mycat:schema SYSTEM "schema.dtd"> 
<mycat:schema xmlns:mycat="http://io.mycat/"> 
   
    <!-- 逻辑库配置 DB1,DB2是逻辑库并不是真的数据库--> 
    <schema name="uusafe-core" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"/> 
    <schema name="uusafe_paas_mos0105" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn2"/> 
        <!-- 表分片配置在这些 --> 
         <!--</schema>  -->
       
    <!-- 节点配置  db1,db2才是真正的数据库 --> 
    <dataNode name="dn1" dataHost="host01" database="uusafe-core" /> 
    <dataNode name="dn2" dataHost="host01" database="uusafe_paas_mos0105" /> 
       
    <!-- 读写分离的配置 --> 
    <dataHost name="host01" maxCon="1000" minCon="10" balance="1" 
          writeType="0" dbType="mysql" dbDriver="native" switchType="3"  slaveThreshold="100"> 
        <heartbeat> show status like 'wsrep%'</heartbeat> 
           
        <writeHost host="hostM1" url="10.0.0.51:3306" user="root" password="123456"> 
            <!-- 可以在这配置它对应的多个读库 --> 
             <readHost host="hostS1" url="10.0.0.52:3306" user="root" password="123456" />
             <readHost host="hostS2" url="10.0.0.53:3306" user="root" password="123456" />
        </writeHost> 
           
        <!--主故障,顶替写节点,主正常是分担读压力--> 
        <writeHost host="hostS2" url="10.0.0.52:3306" user="root" password="123456" > </writeHost>
    </dataHost> 
       
</mycat:schema> 

  

 

posted @ 2018-05-17 15:16  阿进,fighting  阅读(1397)  评论(0编辑  收藏  举报