Thread: pg_rewind and replication user

pg_rewind and replication user

From
Wiwwo Staff
Date:
Hi!
Provided my replication user created with
CREATE USER repl_user REPLICATION LOGIN ENCRYPTED PASSWORD'....';

If I run pg_rewing referring to this user
postgres@host1:~: pg_rewind -D $PGDATA --source-server="host=nre_primary port=5432 user=repl_user passfile='/var/lib/postgresql/.pgpass' dbname=postgres" -P -R

I get
pg_rewind: connected to server
pg_rewind: error: could not fetch remote file "global/pg_control": ERROR:  permission denied for function pg_read_binary_file

My question/doubt is: i can need to run pg_rewind referring to a superuser only? Or i am "just" forgetting some grant to the replication user?

Thanks!

Re: pg_rewind and replication user

From
Mateusz Henicz
Date:
Hey,
If you would look into docs https://www.postgresql.org/docs/current/app-pgrewind.html on the "Notes" section you will find a list of permissions that user needs to have to be able to run pg_rewind. 

Cheers,
Mateusz 

śr., 1 lut 2023, 15:09 użytkownik Wiwwo Staff <wiwwo@wiwwo.com> napisał:
Hi!
Provided my replication user created with
CREATE USER repl_user REPLICATION LOGIN ENCRYPTED PASSWORD'....';

If I run pg_rewing referring to this user
postgres@host1:~: pg_rewind -D $PGDATA --source-server="host=nre_primary port=5432 user=repl_user passfile='/var/lib/postgresql/.pgpass' dbname=postgres" -P -R

I get
pg_rewind: connected to server
pg_rewind: error: could not fetch remote file "global/pg_control": ERROR:  permission denied for function pg_read_binary_file

My question/doubt is: i can need to run pg_rewind referring to a superuser only? Or i am "just" forgetting some grant to the replication user?

Thanks!