Mycat多个数据库显示的配置方法

需求说明:

需要将ecshop和zabbix两个数据库,都通过mycat显示出来,并且都有读写权限

1、修改server.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mycat:server SYSTEM "server.dtd">
<mycat:server xmlns:mycat="http://org.opencloudb/">
        <system>
        <property name="defaultSqlParser">druidparser</property>
        </system>
         <!--以下设置为应用访问帐号权限 -->
        <user name="root">
                <property name="password">123456</property>
                <!-- 下面标签填写的内容需要和schema.xml配置文件内的一致这里的两个值,可用逗号分开,但是在schema.xml配置文件内,必须用两个schema标签来进行分开填写 -->
                <property name="schemas">ecshop,zabbix</property>
        </user>
</mycat:server>

 

2、修改schema.xml文件

<?xml version="1.0"?>
<!DOCTYPE mycat:schema SYSTEM "schema.dtd">
<mycat:schema xmlns:mycat="http://org.opencloudb/">
        <!--这里的schema标签内的name名字需要和server.xml内的一致-->
        <schema name="ecshop" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
        </schema>
         <schema name="zabbix" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn2">
         </schema>
        <!--这里写两个dataNode,对应上述两个schema标签,database的值表示数据库的真实名称 -->
        <dataNode name="dn1" dataHost="dthost" database="ecshop"/>
        <dataNode name="dn2" dataHost="dthost" database="zabbix"/>
<dataHost name="dthost" maxCon="500" minCon="10" balance="1" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100">
        <heartbeat>select user();</heartbeat>
        <writeHost host="MGR-130-1" url="192.168.1.130:3306" user="mycat" password="123456">
             <readHost host="MGR-140-2" url="192.168.1.140:3306" user="mycat" password="123456">
             </readHost>
        </writeHost>
        </dataHost>
</mycat:schema>

 

实验错误总结:

1、之前参照网上很多资料,这里如果写多库显示的,直接写一个schema标签,在标签内的dataNode值内写两个,用逗号分开,

     按照这种方式,配置完毕后,重启mycat报错,提示无法找到dataNode标签内值。

2、这种配置方式不是分库分表,只是单独的实现mycat中间件连接数据库显示的数据库

3、如果要实现真正意义上的分库分表,请参考如下连接:

https://www.cnblogs.com/kevingrace/p/9365840.html

https://www.cnblogs.com/joylee/p/7513038.html

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值