高性能MySQL:树或金字塔形

作者:港云互联 时间:2019-12-10

        如果正在将主库复制到大量的备库中。不管是把数据分发到不同的地方,还是提供更高的读性能,使用金字塔结构都能够更好地管理。


        这种设计的好处是减轻了主库的负担,就像前节提到的分发主库一样。它的缺点是中间层出现的任何错误都会影响到多个服务器。如果每个备库和主库直接相连就不会存在这样的问题。同样,中间层次越多,处理故障会更困难、更复杂。

高性能MySQL:树或金字塔形

定制的复制方案


        MySQL的复制非常灵活,可以根据需要定制解决方案。典型的定制方案包括组合过滤、分发和向不同的存储引擎复制。也可以使用“黑客手段”,例如,从一个使用blackhole存储引擎的服务器上复制或复制到这样的服务器上(本章已讨论过)。可以根据需要任意设计。这其中最大的限制是合理地监控和管理,以及所拥有资源的约束(网络带宽、CPU能力等)。


选择性复制


        为工利用边向品部性质理loy of ce.井将雷要谈的工作集驻留在内存中,可以制少散整好到各本中,如果每个各用只拥有主库的部分数的,井且将分配给备库,就可以更好地利用备库的内存。并且每个备库也只有主库一部分的写人负载,这样主库的能力更强并能保证备库延迟。


        这个方案有点类似下一章我们会计论到的水平数据划分但它的优势在于主库包含了所有的数据集,这意味着无须为了一条写人查询去访问多个服务器。如果读操作无法在备库上找到数据,还可以通过主库来查询。即使不能从备库上谈取所有数据,也可以移除大量的主库读负担。


        最简单的方法是在主库上将数据划分到不同的数据库里。然后将每个数据库复制到不同的备库上。例如,若需要将公司的每一个部门的数据复制到不同的备库,可以创建名为sales、marketing、 procurement 等的数据库,每个备库通过选项replicate _wild do_table选项来限制给定数据库的数据。下面是sales数据库的配置:


replicate wild _do_ table = sales.%


        也可以通过一台分发主库进行分发。举个例子,如果想通过一个很慢或者非常昂贵的网络,从一台负载很高的数据库上复制一部分数据,就可以使用一个包含blackhole表和过滤规则的本地分发主库,分发主库可以通过复制过滤移除不需要的日志。这可以避免在主库上进行不安全的日志选项设定,并且无须传输所有的数据到远程备库。




新人注册,即送价值满880元现金劵

立即注册>>
客服 电话 反馈 活动 回顶部

服务热线

+852-5764-9835

1对1贴心服务,7X24小时热线