Aurora Postgres 数据源配置指南
支持的 Postgres 版本
ClickPipes 支持 Aurora PostgreSQL-Compatible Edition 12 及以上版本。
启用逻辑复制
如果您的 Aurora 实例已配置以下设置,则可以跳过本节:
rds.logical_replication = 1wal_sender_timeout = 0
如果您之前使用过其他数据复制工具,这些设置通常已预先配置。
如果尚未完成配置,请按以下步骤操作:
- 为您的 Aurora PostgreSQL 版本创建一个包含必需设置的新参数组:
- 将
rds.logical_replication设置为 1 - 将
wal_sender_timeout设置为 0
- 将



- 将新参数组应用到您的 Aurora PostgreSQL 集群

- 重启您的 Aurora 集群以使更改生效

配置数据库用户
使用管理员用户连接到您的 Aurora PostgreSQL 写入实例,并执行以下命令:
-
为 ClickPipes 创建一个专用用户:
-
为您在上一步创建的用户授予 schema 级别的只读权限。以下示例展示了
publicschema 的权限。对于每个包含待复制表的 schema,都请重复执行这些命令: -
为该用户授予复制权限:
-
使用您要复制的表创建一个 publication。我们强烈建议只将所需的表包含在 publication 中,以避免额外的性能开销。
注意publication 中包含的任何表都必须已定义 primary key,或者 将其 副本 identity 配置为
FULL。有关如何确定范围的指导,请参阅 Postgres FAQs。-
为特定表创建 publication:
-
为特定 schema 中的所有表创建 publication:
clickpipespublication 将包含指定表产生的变更事件集合,后续将用于摄取复制流。 -
配置网络访问权限
基于 IP 的访问控制
如果您想限制对您的 Aurora 集群的访问流量,请将文档中列出的静态 NAT IP添加到您的 Aurora 安全组的 Inbound rules 中。


通过 AWS PrivateLink 进行私有访问
如需通过私有网络连接到您的 Aurora 集群,可以使用 AWS PrivateLink。请按照我们的 ClickPipes AWS PrivateLink 配置指南 完成连接配置。
Aurora 特定注意事项
使用 Aurora PostgreSQL 设置 ClickPipes 时,请牢记以下注意事项:
-
连接端点:始终连接到 Aurora 集群 的写入端点,因为逻辑复制需要写入权限来创建复制槽,并且必须连接到主 实例。
-
故障切换处理:发生故障切换时,Aurora 会自动将一个 reader 提升为新的写入节点。ClickPipes 会检测到连接中断,并尝试重新连接到写入端点,而该端点此时会指向新的主 实例。
-
Global Database:如果您使用的是 Aurora Global Database,则应连接到主区域的写入端点,因为跨区域复制已负责处理区域之间的数据传输。
-
存储注意事项:Aurora 的存储层由 集群 中的所有 实例 共享,因此与标准 RDS 相比,通常能为逻辑复制提供更好的性能。
处理动态集群端点
虽然 Aurora 提供了稳定的端点,并会自动路由到相应的实例,但您还可以采用以下方法来确保连接始终保持一致:
-
对于高可用配置,请将您的应用配置为使用 Aurora 写入端点,该端点会自动指向当前的主实例。
-
如果使用跨区域复制,建议为每个区域分别设置 ClickPipes,以降低延迟并提高容错能力。
接下来做什么?
您现在可以创建您的 ClickPipe,并开始将 Aurora PostgreSQL 集群中的数据摄取到 ClickHouse Cloud。 请务必记下您在设置 Aurora PostgreSQL 集群时使用的连接信息,因为在创建 ClickPipe 的过程中需要用到这些信息。