Re: How to start slave after pg_basebackup. Why min_wal_size and wal_keep_segments are duplicated - Mailing list pgsql-general

From Andrus
Subject Re: How to start slave after pg_basebackup. Why min_wal_size and wal_keep_segments are duplicated
Date
Msg-id DC1BA2AF303246A3A349C8B0F8B01E1D@dell2
Whole thread Raw
In response to Re: How to start slave after pg_basebackup. Why min_wal_size andwal_keep_segments are duplicated  (Paul Förster <paul.foerster@gmail.com>)
Responses Re: How to start slave after pg_basebackup. Why min_wal_size andwal_keep_segments are duplicated  (Paul Förster <paul.foerster@gmail.com>)
Re: How to start slave after pg_basebackup. Why min_wal_size andwal_keep_segments are duplicated  (Magnus Hagander <magnus@hagander.net>)
List 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
enoughon 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
serverstops.
 
>>if you have disk constraints you will run into trouble sooner or later anyway. Make sure, you have enough disk space.
There'sno 
 
>>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
dependson 
 
>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'llhave 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.




pgsql-general by date:

Previous
From: Gabriele Bulfon
Date:
Subject: Re: problem with self built postgres 9.0.9
Next
From: legrand legrand
Date:
Subject: Re: pg_stat_sql_plans ALPHA released