From: | "Andrus" <kobruleht2(at)hot(dot)ee> |
---|---|
To: | Paul Förster <paul(dot)foerster(at)gmail(dot)com> |
Cc: | "pgsql-general" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: How to start slave after pg_basebackup. Why min_wal_size and wal_keep_segments are duplicated |
Date: | 2020-06-01 08:17:19 |
Message-ID: | DC1BA2AF303246A3A349C8B0F8B01E1D@dell2 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi!
> I have tried to re-initiate replica serveral times in low-use time but this error occurs again.
>remove the whole replica's PGDATA/* and do a pg_basebackup again. But before that, make sure wal_keep_segments in big enough on the
>master and,
I renamed whole cluster before pg_basebackup
>just as much important, do a vacuumdb -a (takes much space during the process) and use archiving!
I run vacuumdb --full --all before pg_basebackup
> If named replication slot is used commands like
> vacuumdb --all --full
> will cause main server crash due to disk space limit. pg_wal directory will occupy free disk space. After that main server stops.
>>if you have disk constraints you will run into trouble sooner or later anyway. Make sure, you have enough disk space. There's no
>>way around that anyway.
This space is sufficient for base backup and replication.
>> I tried using wal_keep_segments =180
>> Will setting wal_keep_segments to higher value allw replication start after pg_basebackup ?
>it depends. If you start the replica immediately and don't wait for hours or days, you should be good to go. But that depends on
>different factors, for example, how >many WAL files are written during the pg_basebackup and pg_ctl start of the replica. If more
>than 180 WALs have gone by on the master because it is really busy, >then you're probably lost again. Point being, you'll have to
>launch the replica before WALs are expired!
>Again: Make sure you have enough disk space, use archiving and use a replication slot.
I tried with wal_keep_segments=360 but problem persisists.
Server generates lot of less than 300 wal files.
Shell script starts server after pg_basebackup completes automatically:
PGHOST=example.com
PGPASSWORD=mypass
PGUSER=replikaator
export PGHOST PGPASSWORD PGUSER
/etc/init.d/postgresql stop
mv /var/lib/postgresql/12/main /var/lib/postgresql/12/mainennebaasbakuppi
pg_basebackup --verbose --progress --write-recovery-conf -D /var/lib/postgresql/12/main
chmod --recursive --verbose 0700 /var/lib/postgresql/12/main
chown -Rv postgres:postgres /var/lib/postgresql/12/main
/etc/init.d/postgresql start
How to create replication server ?
Andrus.
From | Date | Subject | |
---|---|---|---|
Next Message | legrand legrand | 2020-06-01 08:36:28 | Re: pg_stat_sql_plans ALPHA released |
Previous Message | Gabriele Bulfon | 2020-06-01 08:07:29 | Re: problem with self built postgres 9.0.9 |