MySQL 分库分表 dble简单使用
一、運(yùn)行環(huán)境
| 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環(huán)境,1.8及以上版本
直接解壓dble即可
2、dble結(jié)構(gòu)如下
三、配置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"> ##管理用戶以及登陸密碼,并且不能設(shè)置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 分片規(guī)則
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]#
四、登陸驗(yàn)證
mysql -utest -p123456 -P8066 -h127.0.0.1 testdb
總結(jié)
以上是生活随笔為你收集整理的MySQL 分库分表 dble简单使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【数学建模】偏最小二乘回归分析(PLSR
- 下一篇: 有补牙可以洗牙吗