跳到主要内容
跳到主要内容

RDS Postgres 数据源设置指南

支持的 Postgres 版本

ClickPipes 支持 Postgres 版本 12 及更高版本。

启用逻辑复制

如果您的 RDS 实例已经配置了以下设置,您可以跳过此部分:

  • rds.logical_replication = 1
  • wal_sender_timeout = 0

如果您之前使用过其他数据复制工具,这些设置通常是预配置的。

如果尚未配置,请按照以下步骤操作:

  1. 为您的 Postgres 版本创建一个新的参数组,并设置所需的配置:
    • rds.logical_replication 设置为 1
    • wal_sender_timeout 设置为 0
在哪里找到 RDS 中的参数组? 更改 rds.logical_replication 更改 wal_sender_timeout
  1. 将新参数组应用于您的 RDS Postgres 数据库
使用新参数组修改 RDS Postgres
  1. 重启您的 RDS 实例以应用更改
重启 RDS Postgres

配置数据库用户

以管理员用户身份连接到您的 RDS Postgres 实例并执行以下命令:

  1. 为 ClickPipes 创建一个专用用户:

  2. 授予模式权限。以下示例显示了对 public 模式的权限。对每个要复制的模式重复这些命令:

  3. 授予复制权限:

  4. 创建一个用于复制的出版物:

配置网络访问

基于 IP 的访问控制

如果您想限制对 RDS 实例的流量,请将 文档中的静态 NAT IP 添加到 RDS 安全组的 Inbound rules 中。

在哪里找到 RDS Postgres 中的安全组? 编辑上述安全组的入站规则

要通过私有网络连接到您的 RDS 实例,您可以使用 AWS PrivateLink。请遵循我们的 ClickPipes 的 AWS PrivateLink 设置指南 来设置连接。

RDS Proxy 的变通方法

RDS Proxy 不支持逻辑复制连接。如果您在 RDS 中有动态 IP 地址并且不能使用 DNS 名称或 Lambda,以下是一些替代方案:

  1. 使用 cron 作业定期解析 RDS 端点的 IP,并在更改时更新 NLB。
  2. 使用 RDS 事件通知与 EventBridge/SNS:通过 AWS RDS 事件通知自动触发更新。
  3. 稳定的 EC2:部署一个 EC2 实例作为轮询服务或基于 IP 的代理。
  4. 使用 Terraform 或 CloudFormation 等工具自动管理 IP 地址。

接下来怎么做?

您现在可以 创建您的 ClickPipe,开始将来自 Postgres 实例的数据引入 ClickHouse Cloud。 请记下您在设置 Postgres 实例时使用的连接详细信息,因为在创建 ClickPipe 时将需要这些信息。