我现在MySQL库中有很多表,如果用mycat进行管理,是不是需要将所有的表都配置在mycat的schema的配置文件中?如果需要通过mycat建表也需要把表名配置上?可不可以配置表名就新建?希望有人能解答一下我的疑惑,谢谢!
1条回答 默认 最新
小P聊技术 2021-05-28 14:31关注不用的表名全部配置进去的,你只需要配置你需要分库的那些就可以了,我这边有schema的,给你看下:
-
<?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="foodie-shop-dev" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn131"> <!-- auto sharding by id (long) <table name="user" dataNode="dn131,dn132" rule="mod-long" /> <table name="province" dataNode="dn131,dn132" type="global"/> <table name="o_order" autoIncrement="true" primaryKey="id" dataNode="dn131,dn132" rule="mod-long"> <childTable name="order_item" joinKey="order_id" parentKey="id"/> </table> --> <!-- <table name="oc_call" primaryKey="ID" dataNode="dn1$0-743" rule="latest-month-calldate" /> --> <table name="orders" dataNode="dn131,dn132" rule="sharding-by-murmur"> <childTable name="order_items" joinKey="order_id" parentKey="id"/> <childTable name="order_status" joinKey="order_id" parentKey="id" /> </table> </schema> <dataNode name="dn131" dataHost="db131" database="foodie-shop-dev" /> <dataNode name="dn132" dataHost="db132" database="foodie-shop-dev" /> <dataHost name="db131" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="M1" url="192.168.73.131:3306" user="imooc" password="Imooc@123456"> </writeHost> </dataHost> <dataHost name="db132" maxCon="1000" minCon="10" balance="0" writeType="0" dbType="mysql" dbDriver="native" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="M1" url="192.168.73.132:3306" user="imooc" password="Imooc@123456"> </writeHost> </dataHost> </mycat:schema>
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决评论 打赏 举报无用 2-