zoukankan      html  css  js  c++  java
  • Mycat误区解释

    Mycat只能做到分库不分表,和单库分表,不能做到一个库有0-4,另一个库有5-9

    使用方式添加subTables="t_order$1-2,t_order3"。
    目前分表1.6以后开始支持 并且dataNode在分表条件下只能配置一个,分表条件下不支持各种条件的join语句。

      分库不分表,下面这样配,通过mycat 执行create table area_info,在dn1,dn2,dn3都会创建出来area_info

    <?xml version="1.0"?>
    <!DOCTYPE mycat:schema SYSTEM "schema.dtd">
    <mycat:schema xmlns:mycat="http://io.mycat/">
        <!-- TESTDB1 是mycat的逻辑库名称,链接需要用的 -->
        <schema name="mycat_testdb" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
         
        <table name="area_info" dataNode="dn1,dn2,dn3" rule="role1"/>
        
        </schema>
            <!-- database 是MySQL数据库的库名 -->
        <dataNode name="dn1" dataHost="localhost" database="userdb_1" />
        <dataNode name="dn2" dataHost="localhost" database="userdb_2" />
        <dataNode name="dn3" dataHost="localhost" database="userdb_3" />

      如果是单库分表就是这样的,通过subTables可以在一个库下多个分表

    <mycat:schema xmlns:mycat="http://io.mycat/">
    <!-- name: 逻辑数据库名 -->
    <schema name="TESTDB" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1">
    
    <!-- name: 表名,分表主键,子表,数据节点,分表规则 -->
    <table name="ppartspaikong2" primaryKey="projectid" subTables="ppartspaikong_$2-4" dataNode="dn1" rule="jump-consistent-hash" />
    </schema>
    <!-- database:物理数据库名 -->
    <dataNode name="dn1" dataHost="localhost1" database="test" />
  • 相关阅读:
    计算机网络面试题总结
    为0LTP选择RDMBS时,你都需要考虑哪些?
    Redis集群搭建与简单使用
    Innodb关键特性之自适用Hash索引
    关于MySQL的commit非规律性失败案例的深入分析
    MySQL存储写入性能严重抖动分析
    【Linux】管理文件系统
    【Linux】YUM源搭建
    【Linux】计划任务
    【Linux】日志分析及管理
  • 原文地址:https://www.cnblogs.com/juniorMa/p/14443805.html
Copyright © 2011-2022 走看看