Mysql水平分表(基于Mycat)及常用分片规则
参考资料:
参考视频
参考博客
视频资料:链接: https://pan.baidu.com/s/1xT_WokN_xlRv0h06b6F3yg 提取码: aag3
Mysql分库分表(基于Mycat)的基本部署
MySQL垂直分库(基于MyCat)
概述:
- 本例是在垂直分库的基础上,又作的水平分库,参照前文
- 也可以单独拿出来做水平分库
水平分表:
水平分表相对于垂直分库,就多了个分片规则,即按什么规则进行分表
如上,要对tb_log表进行分表,按照ID进行取模,分至三个服务器中
1.修改schema.xml
在原先的schema.xml中,添加如下分表规则(使用Notepad++)
<schema name="ITCAST" checkSQLschema="true" sqlMaxLimit="100"><table name="tb_log" dataNode="dn4,dn5,dn6" primaryKey="id" rule="mod-long" />
</schema>
- <schema/> :总的分库分表规则
- ITCAST:MyCat的逻辑库,实际并不存在
- tb_log:MyCat的逻辑表
- rule=“mod-long”:按照取模进行分片(后面会详细讲到)
再在schema.xml中,添加如下的分表规则
<dataNode name="dn4" dataHost="dhost1" database="itcast" /><dataNo