mycat 分表分库详细,文件配置 菜鸟牌子的配置

根据高亮显示的配置     --菜鸟牌子配置

mycat不支持 # 注释复制配置需要注意

mycat 端口

       8066: 提供远程链接的虚拟mysqld 服务器,提供mysql的接口 

       9066:  提供管理mycat 服务器的即使状态检查和服务管理的接口  【该端口解释来自其他地址】

使用docker-compose 启动

version: '2'
services:
  host1:
    image: mysql:5.7
    environment: 
      - MYSQL_ROOT_PASSWORD=123456
  host2:
    image: mysql:5.7
    environment: 
      - MYSQL_ROOT_PASSWORD=123456
  host3:
    image: mysql:5.7
    environment: 
      - MYSQL_ROOT_PASSWORD=123456
使用docker inspect 获取ip

host1:     ip  = 172.19.0.2

host2:     ip  = 172.19.0.3

host3:     ip  = 172.19.0.4

配置=================================

文件一:    server.xml     <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

    
        123456
        test     #指定与schema.xml 文件中配置的虚拟库schema绑定    高亮显示test
    

文件二:   schema.xml     <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<



    test" checkSQLschema="true" sqlMaxLimit="100000">  #name是虚拟库与server.xml中绑定   高亮显示test
        

dn1,dn2,dn3" rule="rule19"  />   #rule 引用当前目录下的rule.xml 文件中tableRule分片路由模式, dataNode绑定dataNode中的name实现虚拟库绑定分片  高亮显示rule19    高亮显示dn
    

    dn1" dataHost="host1"  database="dbs" />  #定义数据片由 table 引用 定义片存储的主机 dataHost指定绑定真是主机 database 指定真是主机的真实库并且映射到dn1中共table 使用,实现虚拟库绑定真是物理机器库   高亮显示dn  高亮显示 host
    dn2" dataHost="host2"  database="dbs" />  #高亮显示dn   高亮显示 host
    dn3" dataHost="host3"  database="dbs" />  #高亮显示dn   高亮显示 host
 
       #定义真是主机 name字段绑定主机共分片dataNode条用
                   writeType="0" dbType="mysql" dbDriver="native" >   #maxCon 最大链接maxmin 最小链接   balance指定读写分离的参数分片选着0即可  
        select user()
        高亮显示 host
                   password="123456">
          

    

       
    高亮显示 host
              writeType="0" dbType="mysql" dbDriver="native" > 
        select user()
                            password="123456">
          

    

    
    高亮显示 host
              writeType="0" dbType="mysql" dbDriver="native" >
        select user()
                            password="123456">
          

    


 

文件三:   rule.xml     <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

文件结构根据结构修改即可,两块配置是分离的 前面的调用后面定义的结构 使用去调用

   #name定义与给schema.xml调用
        
            id  #在数据库中的字段分片字段
            murmur     #指定函数调用function中的"murmur"
        

    
 

定义分片规则

##########################################################################################





    rule19">   #和schema.xml中的table 绑定  高亮显示rule19
        
            id
            murmur
        

    

    
        
            id
            func1
        

    

    
        
            user_id
            func1
        

    

    
        
            sharding_id
            hash-int
        

    

    
        
            id
            rang-long
        

    

    
        
            id
            mod-long
        

    

    
        
            id
            murmur
        

    

    
        
            id
            crc32slot
        

    

    
        
            create_time
            partbymonth
        

    

    
        
            calldate
            latestMonth
        

    

    
    
        
            id
            rang-mod
        

    

    
    
        
            id
            jump-consistent-hash
        

    

             class="io.mycat.route.function.PartitionByMurmurHash">
        0
        3
        160
        
        
    

                   class="io.mycat.route.function.PartitionByCRC32PreSlot">
    

             class="io.mycat.route.function.PartitionByFileMap">
        partition-hash-int.txt
    

             class="io.mycat.route.function.AutoPartitionByLong">
        autopartition-long.txt
    

    
        
        3
    

    
        8
        128
    

             class="io.mycat.route.function.LatestMonthPartion">
        24
    

             class="io.mycat.route.function.PartitionByMonth">
        yyyy-MM-dd
        2015-01-01
    

    
    
            partition-range-mod.txt
    

    
    
        3
    


 

你可能感兴趣的:(mycat,mysql,linux)