Mysql 您可以使用Amazon';复制特定的数据库或表吗;s RDS

Mysql 您可以使用Amazon';复制特定的数据库或表吗;s RDS,mysql,replication,amazon-rds,Mysql,Replication,Amazon Rds,我们使用的是Amazon RDS,我们有一个从主机复制到从主机 我们想要创建一个新的从机,它只从主机复制特定的数据库或表 默认情况下,RDS只是将整个主机的数据库复制到从机的数据库。但我们只想做特定的表格。我知道这在MySQL中是可能的,但我不确定RDS,我在任何地方都找不到答案 这些设置存在于MySQL中,我不会在RDS的自定义参数设置中看到它们,除非我遗漏了什么 --replicate-ignore-db=db_name --replicate-ignore-table=db_name.tb

我们使用的是Amazon RDS,我们有一个从主机复制到从主机

我们想要创建一个新的从机,它只从主机复制特定的数据库或表

默认情况下,RDS只是将整个主机的数据库复制到从机的数据库。但我们只想做特定的表格。我知道这在MySQL中是可能的,但我不确定RDS,我在任何地方都找不到答案

这些设置存在于MySQL中,我不会在RDS的自定义参数设置中看到它们,除非我遗漏了什么

--replicate-ignore-db=db_name
--replicate-ignore-table=db_name.tbl_name

这在RDS中是不可能的

您可以通过将不希望复制的表转换为Engine=Blackhole来“伪造”,但是您必须编辑参数组并将“read-only”设置为0,而不是默认的“{TrueIfReplica}”


或者,您需要在EC2上运行自己的从属服务器,将RDS服务器作为主服务器(如果您在RDS上运行MySQL 5.6,这是可能的,但不是5.5或更低),但是设置起来非常复杂。

正如Kat所说,不,他们不提供该功能

我也不期望它,因为我们可以用它来打破它们的as-a-service封装,这需要复制某些表才能使主要功能正常工作

我正在考虑的一个解决方法是在复制链中的主服务器和从服务器之间创建一个基于EC2的MySQL实例(使用外部复制功能),应用这些过滤器,并为所有表预先设置黑洞引擎,以使事情变得简单


一个额外的优势是,RDS从站要解析的二进制日志数据较少,因为它是预过滤的。

AWS RDS已更改,现在支持它。 数据库复制与实例复制的rds参数:

发布日期:2021年2月12日

Amazon关系数据库服务(Amazon RDS)现在支持MySQL和MariaDB实例的复制过滤器。复制筛选器指定在读取副本中复制哪些数据库和表。客户为每个复制副本创建要包括或排除的数据库和表的列表

要了解有关复制筛选以及如何将其应用于实例的更多信息,请参阅或的Amazon RDS用户指南

要配置复制筛选器,请在读取副本上设置以下复制筛选参数:

  • replicate do db
  • replicate ignore db
  • 复制do表
  • 复制忽略表
  • 复制野生do表
  • 复制野生忽略表
参数将按其列出的顺序进行计算。有关这些参数如何工作的详细信息