天天看点

mycat分库分表

mycat高可用集群方案

keepalived:

haproxy; 

mycat:

mycat分库分表解决方案:mycat:数据库分片

explain select * from order_master

1.水平分按数据库分:表结构相同的多个表1

   水平分库的优点:  提高并发,提高了系统的负载能力

                                 跨分片的事务一致性难保证

                    缺点:     跨库查询比较慢,join 关联查询性能差;

                                扩容后的难度和维护的量大,拆分1000表

2.垂直分库:专库专用,按业务分一个业务表一库

垂直分表:基于数据表的字段列为依据切分;冷数据处理而已,order,order_extend

优点:缓解了数据库的压力,

缺点:提升了开发的复杂性,跨库处理,分布式事务问题,难以维护

3. 分库分表的难点:

1.分布式事务(mycat 已集成);三段提交,2端提交,最终一次性方案,事务补偿方案,seate,sage,cap事务解决方案

2.分页,排序,跨库联合查询(全局表)

3.分布式主键(雪花算法,zookeeper临时节点,队列)

4.读写分离(mycat 可用直接配置读写分离)

5.数据脱敏(mycat 将隐私信息处理)

4.基于数据量水平分库分表,基于业务垂直分库,基于冷热数据垂直分表(一个表根据字段存的数据量大,可以单独分一个表)

mycat ,ldd

mycat分库分表

5.安装步骤:

1.安装mysql usr/local/mysql,multi-execution ;scp -r ./mysql [email protected]:/usr/local/; systemctl start mysqld 启动mysql;mysqld 查看启动的mysql

2.安装mycat +jdk:做路由 ;

server.xml:mycat配置

rule.xml:分片规则,哈希分配方式,取模

3.安装keepalived

4.安装zookeeper3.5:高可用组件,心跳检测;没有负载均衡;leader,follower;zoo.cfg

5>haproxy:监控,负载均衡

mobaxtem =xshell 工具

继续阅读