将表从主服务器动态分区到远程 mySQL 服务器



我的数据库中有一个表,我需要根据外键属性对其进行分区。因此,分区表的数量与外键存在的不同值的数量相同。

编辑:我有复制设置,其中主服务器中的一个表在四个从属服务器中复制。从站不需要在主服务器中复制整个表,而只需要复制它的分区,如图所示。如何实现这一目标?

映像:复制分区

根据需要

转到设备的内容将数据拆分为单独的表或单独的数据库。 然后有 3 层:

主 -> 继电器 -> 设备

每个继电器既是从属(到主设备)又是主设备(到一个或多个)设备。 在中继中,您不想转到设备的表被声明为 ENGINE=BLACKHOLE 。 中继中的其他表正常声明。

中继可以与主服务器位于同一服务器上,但您需要单独的 mysqld 实例,每个实例都有一个单独的端口(3306 除外)。 开销会相当小,特别是因为中继除了传递数据子集之外什么都不做。

编辑(基于图像)

要限制从属服务器中的空间,请在从属服务器上使用"replicate_do/忽略"命令。 这不会减少从主站或从站的带宽。 然后,replicate_* 设置将丢弃大部分复制的数据。

如果您需要限制从站带宽,请引入上述继电器和黑洞。

相关内容

  • 没有找到相关文章

最新更新