On the standby, do not create a PostgreSQL instance (i.e.
do not execute initdb or any database creation
scripts provided by packages), but do ensure the destination
data directory (and any other directories which you want PostgreSQL to use)
exist and are owned by the postgres
system user. Permissions
must be set to 0700
(drwx------
).
repmgr will place a copy of the primary's database files in this directory. It will however refuse to run if a PostgreSQL instance has already been created there.
Check the primary database is reachable from the standby using psql:
psql 'host=node1 user=repmgr dbname=repmgr connect_timeout=2'
repmgr stores connection information as libpq
connection strings throughout. This documentation refers to them as conninfo
strings; an alternative name is DSN
(data source name
).
We'll use these in place of the -h hostname -d databasename -U username
syntax.