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

Google Cloud SQL Postgres 源设置指南

信息

如果您使用所支持的提供商之一(在侧边栏中),请参阅该提供商的特定指南。

支持的 Postgres 版本

任何版本为 Postgres 12 或更高版本。

启用逻辑复制

如果设置 cloudsql.logical_decoding 为开启且 wal_sender_timeout 为 0,则您不需要 按照以下步骤操作。这些设置在迁移自其他数据复制工具时通常会预先配置。

  1. 点击概览页面上的 编辑 按钮。
Cloud SQL Postgres 中的编辑按钮
  1. 转到标志,并将 cloudsql.logical_decoding 更改为开启,wal_sender_timeout 更改为 0。这些更改需要重启您的 Postgres 服务器。
将 cloudsql.logical_decoding 更改为开启
更改 cloudsql.logical_decoding 和 wal_sender_timeout
重启服务器

创建 ClickPipes 用户并授予权限

通过管理员用户连接到您的 Cloud SQL Postgres,并运行以下命令:

  1. 为 ClickPipes 创建一个 Postgres 用户。
CREATE USER clickpipes_user PASSWORD 'some-password';
  1. clickpipes_user 提供从中复制表的架构的只读访问权限。以下示例显示了为 public 架构设置权限。如果您希望授予多个架构的访问权限,可以对每个架构运行这三条命令。
GRANT USAGE ON SCHEMA "public" TO clickpipes_user;
GRANT SELECT ON ALL TABLES IN SCHEMA "public" TO clickpipes_user;
ALTER DEFAULT PRIVILEGES IN SCHEMA "public" GRANT SELECT ON TABLES TO clickpipes_user;
  1. 授予此用户复制访问权限:
ALTER ROLE clickpipes_user REPLICATION;
  1. 创建将来用于创建 MIRROR(复制)的发布。
CREATE PUBLICATION clickpipes_publication FOR ALL TABLES;

将 ClickPipes IP 添加到防火墙

请按照以下步骤将 ClickPipes IP 添加到您的网络。

备注

如果您使用 SSH 隧道,则需要将 ClickPipes IP 添加到跳转服务器/堡垒的防火墙规则中。

  1. 转到 连接 部分
Cloud SQL 中的连接部分
  1. 转到网络子部分
Cloud SQL 中的网络子部分
  1. 添加 ClickPipes 的公共 IP
将 ClickPipes 网络添加到防火墙
ClickPipes 网络已添加到防火墙

下一步是什么?

您现在可以 创建您的 ClickPipe 并开始将数据从您的 Postgres 实例加载到 ClickHouse Cloud 中。 确保记下您在设置 Postgres 实例时使用的连接详细信息,因为在 ClickPipe 创建过程中将需要这些信息。