MySQL系列(七)--数据库分库分表

  在互联网公司或者一些并发量比较大的项目,虽然有各种项目架构设计、NoSQL、MQ、ES等解决比较高的并发访问,但是对于数据库来说,压力

还是太大,这时候即使数据库架构、表结构、索引等都设计的很好了,但是还是扛不住的,主从复制通过读写分离缓解读负载。但是像淘宝这种项目,

单一数据库肯定是不行的,为了解决这个问题,就可以使用分库分表

PS:这是一篇学习博客,本人没实操过,适合作为入门了解或者面试,如果深入了解,请自行百度大佬的文章

分库分表的方式:

1、把一个实例的多个数据库拆分到不同的实例,这个实例可能是数据库集群

优缺点:

  操作简单

  但是如果写压力存在某个库,这样拆分还是无法解决问题

2、把一个库中的表拆分到不同的数据库

  例如:把一个库中的订单表、商品表、购物车表分别拆分到不同的数据库

 

3、水平拆分

  在前面两种情况无法解决的情况下,就要使用水平拆分

  对一个库中的相关表进行水平拆分到不同实例的数据库,进行分片处理

分片处理是最后的方案,能在之前解决问题,就不要分片,分片之后会带来很多问题,也会变得复杂

分片前的准备:

未完待续。。。

猜你喜欢

转载自www.cnblogs.com/huigelaile/p/11137187.html