MySQL的分库分表

2019-01-28  本文已影响11人  RwatitFahsa

MySQL的分库分表

概述

简单的来说分库分表就是通过某种特定的条件,将存放在同一数据库中的数据分散在多个数据库中,从而实现分散单台服务器负载的效果。

分库分表前存在的问题

1.单库太大

单个数据库处理的能力有限,单库上的IO操作的瓶颈 解决办法:切分成更多更小的库,单库在数据量足够大的时候所在的服务器磁盘空间的不足

2.单表太大

CRUD都成问题,索引膨胀,查询超时 解决办法:切分成多数据集更小的表

3.用户请求量太大

因为单服务器TPS,内存,IO都是有限的。 解决方法:分散请求到多个服务器上; 其实用户请求和执行一个sql查询是本质是一样的,都是请求一个资源,只是用户请求还会经过网关,路由,http服务器等。

两种切分模式

两种切分方式的优缺点

垂直分表

优点

缺点

水平分表

优点

缺点

总结

综上所述,垂直切分和水平切分的共同点如下:

上一篇 下一篇

猜你喜欢

热点阅读