分库分表和主从备份的详细介绍

158 阅读2分钟

分库分表

(1)水平分库: 以字段为依据,按照一定策略,将一个库中的数据拆分到多个库中; 库结构一样,数据不一样,没有交集,所有库的并集是全量数据。

(2)水平分表 以字段为依据,按照一定策略,将一个表中的数据拆分到多个表中。 表结构一样,数据不一样,没有交集,所有表的并集是全量数据。

(3)垂直分库 以表为依据,按照业务归属不同,将不同的表拆分到不同的库中。 库的结构都不一样,库的数据也不一样,没有交集,库的并集是全量数据。

(4)垂直分表 以字段为依据,按照字段的活跃性,将表中字段拆到不同的表(主表和扩展表)。 每个表的结构都不一样,每个表的数据也不一样,一般来说,每个表的字段至少有一列交集,一般是主 键,用于关联数据。 所有表的并集是全量数据。

主从备份

读写分离 一个主库,若干存库 将master的数据复制到slave的数据库中。 通过binlog二进制文件进行复制 有两种形式复制,一种基于语句复制,另一种基于行复制。

主从复制过程简单介绍: 1.主库的事务提交后,完成数据更新前,把更新改记录写入到二进制日志文件。

2.备库讲主库中的二进制日志数据复制到中继日志。备份数据库启动一个I/O线程与主库建立连接,读取 主库中二进制日志数据。

3.备库读取中继日志,将数据重放到备库中。重放时采用单线程sql从中继日志读取事件,重放读取事件 更新数据到备库,完成数据重放,最终使其与主库中数据保持一致。