我正在尝试遵循Postgres的Debezium教程并设置一个复制用户。我创建复制用户的步骤如下:
CREATE ROLE replication_role WITH REPLICATION LOGIN;
CREATE USER debezium WITH PASSWORD 'my-secret-pw';
GRANT replication_role TO debezium;
CREATE ROLE replication_group WITH LOGIN;
GRANT replication_group TO postgres;
GRANT replication_group TO debezium;
ALTER TABLE person OWNER TO replication_group;并将复制用户设置为:
List of roles
Role name | Attributes | Member of
-------------------+------------------------------------------------------------+--------------------------------------
debezium | | {replication_role,replication_group}
postgres | Superuser, Create role, Create DB, Replication, Bypass RLS | {replication_group}
replication_group | | {}
replication_role | Replication | {}当我尝试启动Postgres源连接器时,会得到如下错误:
io.debezium.DebeziumException: Creation of replication slot failed
...
Caused by: org.postgresql.util.PSQLException: FATAL: must be superuser or replication role to start walsender如何解决权限问题,以便开始从Postgres复制?
发布于 2022-07-09 16:36:52
复制属性不被继承。该属性必须直接设置在将使用它的角色上。你说你在学习本教程,但据我所知,你不是。您似乎混淆了创建发布所需的权限/属性与流发布所需的权限/属性。
https://stackoverflow.com/questions/72922658
复制相似问题