使用适用于 Amazon RDS for Db2 的副本 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用适用于 Amazon RDS for Db2 的副本

要在 RDS for Db2 数据库实例之间配置复制,您可以创建副本数据库。有关 RDS for Db2 副本和其它数据库引擎之间的差异摘要,请参阅数据库引擎的只读副本之间的差异

Db2 副本数据库是主数据库的物理副本。处于备用模式的 Db2 副本称为备用副本。Db2 不支持在副本中进行读或写操作,但您可以提升副本以使其变为可写。提升的副本拥有提出提升请求时的已复制数据。RDS for Db2 使用 Db2 高可用性灾难恢复(HADR)来进行复制。有关更多信息,请参阅 IBM Db2 文档中的 High availability disaster recovery (HADR)

备用副本

创建或修改 Db2 副本时,可以将其置于备用模式。对于备用副本,Db2 环境变量 DB2_HADR_ROS 设置为 OFF,以便副本数据库不接受用户连接。备用副本的主要用途是跨区域灾难恢复。

备用副本无法为只读工作负载提供服务。备用副本没有任何归档日志。

您可以从一个源数据库实例创建最多三个副本。

数据库激活

Db2 HADR 是在数据库级别配置的。创建副本后,将为所有 Db2 数据库(包括 RDS 完全管理的 rdsadmin)设置 HADR。在创建 Db2 副本之前,必须显式激活所有数据库。否则,副本创建将失败,并且 Amazon RDS 发出一个事件。在数据库实例拥有一个或多个副本后,您无法使用 rdsadmin.activate_databaserdsadmin.deactivate_database 存储过程来激活或停用数据库实例上的任何数据库。但是,您可以调用 rdsadmin.reactivate_database 存储过程来重新激活数据库。有关更多信息,请参阅用于管理 RDS for Db2 数据库的存储过程

HADR 配置

可以通过连接到数据库,然后运行 db2 get db cfg 来查看该数据库的所有 HADR 配置。

归档日志保留

满足以下条件后,Amazon RDS 会清除主数据库实例中的日志:

  • 这些日志至少保留了两个小时。

  • 归档日志保留时间的设置已过期。

  • 归档日志已成功复制到所有副本数据库实例。此条件既适用于同一 Amazon Web Services 区域中的数据库实例,也适用于跨区域数据库实例。

有关如何设置存档日志保留时间的信息,请参阅rdsadmin.set_archive_log_retention

Amazon RDS 会单独检查和清理每个数据库。如果数据库丢失 HADR 连接或者无法获得有关该连接的信息,Amazon RDS 将跳过该数据库并且不会清除归档日志。

Db2 复制过程中的中断

当您创建副本时,Amazon RDS 会制作源数据库实例的数据库快照,然后开始复制。数据库快照操作开始时,源数据库实例会经历非常短暂的 I/O 暂停。这种 I/O 暂停通常持续大约一秒时间。但是,如果源数据库实例为多可用区部署,则源数据库实例不会经历任何 I/O 暂停。这是因为在多可用区部署中,快照取自辅助数据库实例。

数据库快照变成 Db2 副本。Amazon RDS 为源数据库和副本设置必要的参数和权限,而不会经历任何服务中断。同样,如果删除副本,也不会发生中断。