我正在尝试使用Debezium Postgres连接器连接到Cloud SQL postgres。 我在日志中收到以下错误。
connect_1 | org.apache.kafka.connect.errors.ConnectException: org.postgresql.util.PSQLException: FATAL: must be superuser or replication role to start walsender
connect_1 | at io.debezium.connector.postgresql.PostgresConnectorTask.start(PostgresConnectorTask.java:127)
我突然想到我需要将复制添加到我的用户角色中。 但是,CloudSQL文档说了以下内容。
当您创建新的 Cloud SQL for PostgreSQL 实例时,默认的 postgres 用户已经为您创建,但您必须设置其密码。 postgres 用户是 cloudsqlsuperuser 角色的一部分,具有以下属性(权限(:CREATEROLE、CREATEDB 和 LOGIN。它没有超级用户或复制属性。
现在正因为如此,我无法更改角色以添加复制
ps:云 SQL 实例配置为高可用性。
Debezium 需要 Postgres wal2json 扩展,Cloud SQL 目前不支持该扩展。对此有一个正在进行的功能请求,您可以检查。你需要在GCE上设置Postgresql,并在那里设置Debezium。
如果这有帮助,请接受答案