zoukankan      html  css  js  c++  java
  • MySQL 分库分表 dble简单使用

    一、运行环境

    Host Name IP DB Mod
    data0 172.16.100.170 mysql  
    data1 172.16.100.171 mysql  
    data2 172.16.100.172 mysql  

     二、安装dble

    1、上传安装dble

    需要Java环境,1.8及以上版本

    直接解压dble即可

    2、dble结构如下

    三、配置dble

    配置文件放在conf目录下

    1、配置server.xml 全局信息

    cp server_template.xml server.xml

    [root@data0 conf]# cat server.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE dble:server SYSTEM "server.dtd">
    <dble:server xmlns:dble="http://dble.cloud/" version="1.0">
        <system>
            <property name="serverPort">8066</property>       ##操作MySQL端口
            <property name="managerPort">9066</property>   ##管理MySQL端口
        </system>
        <!-- firewall config -->
        <!--
        <firewall>
        <whitehost>
              <host host="127.0.0.1" user="root"/>
              <host host="0:0:0:0:0:0:0:1" user="root"/>
           </whitehost>
           <blacklist check="true">
           <property name="selelctAllow">false</property>
           </blacklist>
        </firewall>
        -->
        <user name="man1">    ##管理用户以及登陆密码,并且不能设置schema
            <property name="password">654321</property>
            <property name="manager">true</property>
            <!-- manager user can't set schema-->
        </user>
        <user name="test">    ##操作用户以及密码
            <property name="password">123456</property>
            <property name="schemas">testdb</property>
        </user>
    </dble:server>
    [root@data0 conf]#

    2、配置schema.xml 分片信息

    cp schema_template.xml schema.xml
    [root@data0 conf]# cat schema.xml
    <?xml version="1.0"?>
    <!DOCTYPE dble:schema SYSTEM "schema.dtd">
    <dble:schema xmlns:dble="http://dble.cloud/" version="1.0">
        <schema name="testdb">
            <table name="users" primaryKey="ID" dataNode="dn1,dn2,dn3" rule="sharding-by-mod2"/>
        </schema>
        <dataNode name="dn1" dataHost="data0" database="testdb1"/>
        <dataNode name="dn2" dataHost="data1" database="testdb2"/>
        <dataNode name="dn3" dataHost="data2" database="testdb3"/>
        <dataHost name="data0" maxCon="1000" minCon="10" balance="0" switchType="-1" slaveThreshold="100">
            <heartbeat>show slave status</heartbeat>
            <writeHost host="data0" url="172.16.100.170:14014" user="test" password="123456">
            </writeHost>
        </dataHost>
        <dataHost name="data1" maxCon="1000" minCon="10" balance="0" switchType="-1" slaveThreshold="100">
            <heartbeat>show slave status</heartbeat>
            <writeHost host="data1" url="172.16.100.171:14015" user="test" password="123456">
            </writeHost>
        </dataHost>
        <dataHost name="data2" maxCon="1000" minCon="10" balance="0" switchType="-1" slaveThreshold="100">
                <heartbeat>show slave status</heartbeat>
            <writeHost host="data2" url="172.16.100.172:14016" user="test" password="123456">
            </writeHost>
        </dataHost>
    </dble:schema>
    [root@data0 conf]#

    3、配置rule.xml 分片规则

    cp rule_template.xml rule.xml
    [root@data0 conf]# cat rule.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE dble:rule SYSTEM "rule.dtd">
    <dble:rule xmlns:dble="http://dble.cloud/" version="1.0">
        <tableRule name="sharding-by-mod2">
            <rule>
                <columns>id</columns>
                <algorithm>hashmod2</algorithm>
            </rule>
        </tableRule>
        <function name="hashmod2" class="Hash">
           <property name="partitionCount">3</property>
           <property name="partitionLength">1</property>
        </function>
    </dble:rule>
    [root@data0 conf]#

    四、登陆验证

    mysql -utest -p123456 -P8066 -h127.0.0.1 testdb
     
  • 相关阅读:
    7种jvm垃圾回收器,这次全部搞懂
    3分钟学会redis主从复制搭建,及原理
    一文搞懂什么是递归,程序员必会算法之一
    Redis持久化方式:RDB和AOF详解,对比
    jvm垃圾回收算法详解,看这一篇就够了(求点赞)
    Redis命令大全,满足你的日常工作,看这一篇就够了(求点赞)
    Java自定义异常为什么性能差(求点赞)阿里双十一的性能凶手之一
    jvm类加载器,类加载机制详解,看这一篇就够了(求点赞)
    show processlist 命令详解,MySQL优化看这一篇就够了
    asp.net中的post和get请求操作
  • 原文地址:https://www.cnblogs.com/xibuhaohao/p/11911330.html
Copyright © 2011-2022 走看看