MySQL分库分表、读写分离、主从机制和分区

版权声明:杨福东 https://blog.csdn.net/qq_31120741/article/details/83343288

MySQL分库分表、读写分离、主从机制和分区


为什么需要分库分表、读写分离?

  1. 随着数据库里表的数据量不断增大,查询所需的时间就会越来越长;另外,由于MySQL会对更改表的操作加锁,会阻塞其他操作。
  2. 所以从两方面考虑,对于数据量的问题,用分库分表解决;对于写操作会阻塞后续读操作,用读写分离解决。
  3. 用merge存储引擎来实现分表,不需要改动代码。
  4. 做到读写分离,就需要使用MySQL提供的主从机制。做到读写分离,就需要使用MySQL提供的主从机制。
  5. 在数据量非常非常大的情况下,可以采用分区理念,分为垂直和水平分区。

如何实现分表?下面是merge引擎操作图示。
在这里插入图片描述
用“主从复制“机制实现读写分离,实际中存在着一系列问题,比如,复制延时,锁表率上升,表变大,缓存率下降等。这里介绍另一种方式——分区。

分区的理念是怎样的?

垂直分区:根据业务不同,将数据放到不同的数据库服务器,而且万一其中一个服务器崩溃了也不会影响其他服务的正常进行,并且也起到了负载分流的作用,大大提升了数据库的吞吐能力。
水平分区:按照一定策略,将数据存到不同的区。一般根据主键的hash值来确定对应哪个分区。

猜你喜欢

转载自blog.csdn.net/qq_31120741/article/details/83343288