首页 > 数据库技术 > 详细

Mysql--->(优化)主从复制,读写分离,分库分表

时间:2021-02-04 20:46:38      阅读:97      评论:0      收藏:0      [点我收藏+]

数据库优化

1、换数据库

2、优化SQL

3、读写分离

4、分库分表

 

1、主从同步,读写分离

一次插入,多次查询

Mysql    proxy 代理进行

技术分享图片

 

 2、分库分表

 

分库

 

分表

垂直:

垂直:

电商:订单表,会员表,商品表

user表:userbase、userinfo(主键user id 作唯一表示)

水平:

水平:

一个库分成两个 一个表分成两个表

 

 垂直

1、每个库(表)的结构都不一样

2、每个库(表)的数据至少有一列是一样的

3、每个库(表)的并集就是全部数据

优点: 

1、拆分后业务清晰

2、数据维护简单,按业务不同在不同机器上

缺点:

1、单表数据量大,读写压力大

2、受业务来决定或被限制一个业务会影响数据库瓶颈

3、部分业务无法关联,提高开发复杂度

 

水平

1、每个库(表)的结构都一样

2、每个库(表)的数据都是一样的

3、每个库(表)的并集就是全部数据

 优点:

1、单库的数据保持在一定的量,有助于性能提高

2、提高了系统的稳定性和负载能力

3、切分的表的结构相同,程序改造较少

缺点:

1、扩容难,增加库计算规则发生改变

2、拆分规则很难抽象出来

3、分片事务的一致性问题部分业务的无法关联,只能通过Java接口去调用

 

问题

ACID 分布式事务

维护成本

跨库的查询问题

分布式全局唯一ID

 

分库分表 中间件

proxy代理层

mycat、shardingproxy

支持跨语言

 

JDBC应用层

shardingjdbc

支持多种数据库

 

Mysql--->(优化)主从复制,读写分离,分库分表

原文:https://www.cnblogs.com/springxian/p/14355990.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!