Discussion:
[ADMIN] Trying to use binary replication - from tutorial
(too old to reply)
Evan Walter
2011-10-13 15:41:32 UTC
Permalink
Hello,
I am somewhat new with postgresql trying to find a good method of
replication for my company.
I am running through the tutorials on binary replication for postgresql
9.1. Both servers are virtual box Ubuntu 10.10 on a laptop.

I ran this rsync -av --exclude pg_xlog --exclude postgresql.conf
/var/lib/postgresql/9.1/main/* postgres:<ip-address of
standby>:/var/lib/postgresql/9.1/main/

The standby server then will not restart. It says it is missing
pg_xlog/0000000000 ... files

I ran the rsync again not excluding the pg_xlog. This time both servers
restart but there doesn't seem to be any replication occurring.

I am curious why this is going on - why it didn't work excluding the
pg_xlog. Was there something wrong with my syntax? Is there something I am
missing not found in the tutorial?
I will appreciate any help, advice.

Thank you,

Evan
Scott Marlowe
2011-10-13 17:20:22 UTC
Permalink
On Thu, Oct 13, 2011 at 9:41 AM, Evan Walter
Post by Evan Walter
Hello,
I am somewhat new with postgresql trying to find a good method of
replication for my company.
I am running through the tutorials on binary replication for postgresql
9.1.  Both servers are virtual box Ubuntu 10.10 on a laptop.
I ran this rsync -av --exclude pg_xlog --exclude postgresql.conf
/var/lib/postgresql/9.1/main/* postgres:<ip-address of
standby>:/var/lib/postgresql/9.1/main/
Shouldn't the destination be:

postgres@<ip-address of standby>:/var/lib/postgresql/9.1/main/
--
Sent via pgsql-admin mailing list (pgsql-***@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin
Evan Walter
2011-10-13 17:22:43 UTC
Permalink
Yes, sorry. Type

Evan
Post by Scott Marlowe
On Thu, Oct 13, 2011 at 9:41 AM, Evan Walter
Post by Evan Walter
Hello,
I am somewhat new with postgresql trying to find a good method of
replication for my company.
I am running through the tutorials on binary replication for postgresql
9.1. Both servers are virtual box Ubuntu 10.10 on a laptop.
I ran this rsync -av --exclude pg_xlog --exclude postgresql.conf
/var/lib/postgresql/9.1/main/* postgres:<ip-address of
standby>:/var/lib/postgresql/9.1/main/
Mark Keisler
2011-10-13 20:19:59 UTC
Permalink
Do not rsync the pg_xlog. Basically that error means that the
restore_command in your recovery.conf is not working. You have hot_standby
archiving going on the master and a recovery_command on the slave, right?


On Thu, Oct 13, 2011 at 10:41 AM, Evan Walter
Post by Evan Walter
Hello,
I am somewhat new with postgresql trying to find a good method of
replication for my company.
I am running through the tutorials on binary replication for postgresql
9.1. Both servers are virtual box Ubuntu 10.10 on a laptop.
I ran this rsync -av --exclude pg_xlog --exclude postgresql.conf
/var/lib/postgresql/9.1/main/* postgres:<ip-address of
standby>:/var/lib/postgresql/9.1/main/
The standby server then will not restart. It says it is missing
pg_xlog/0000000000 ... files
I ran the rsync again not excluding the pg_xlog. This time both servers
restart but there doesn't seem to be any replication occurring.
I am curious why this is going on - why it didn't work excluding the
pg_xlog. Was there something wrong with my syntax? Is there something I am
missing not found in the tutorial?
I will appreciate any help, advice.
Thank you,
Evan
Evan Walter
2011-10-13 20:31:28 UTC
Permalink
I pretty much didn't change anything in the config files except what was in
the tutorial at http://wiki.postgresql.org/wiki/Binary_Replication_Tutorial

on the slave I created a recovery.conf file containing:
standby_mode = 'on'
primary_conninfo = 'host=<servers ip here>'

on the master postgresql.conf I set
listen_address = '*'
wav_level = hot_standby
max_wal_senders = 3

I didn't change any of postgresql.conf Archiving settings. They all seem to
be commented out. Could that be the problem?

Evan
Post by Mark Keisler
Do not rsync the pg_xlog. Basically that error means that the
restore_command in your recovery.conf is not working. You have hot_standby
archiving going on the master and a recovery_command on the slave, right?
Post by Evan Walter
Hello,
I am somewhat new with postgresql trying to find a good method of
replication for my company.
I am running through the tutorials on binary replication for postgresql
9.1. Both servers are virtual box Ubuntu 10.10 on a laptop.
I ran this rsync -av --exclude pg_xlog --exclude postgresql.conf
/var/lib/postgresql/9.1/main/* postgres:<ip-address of
standby>:/var/lib/postgresql/9.1/main/
The standby server then will not restart. It says it is missing
pg_xlog/0000000000 ... files
I ran the rsync again not excluding the pg_xlog. This time both servers
restart but there doesn't seem to be any replication occurring.
I am curious why this is going on - why it didn't work excluding the
pg_xlog. Was there something wrong with my syntax? Is there something I am
missing not found in the tutorial?
I will appreciate any help, advice.
Thank you,
Evan
Mark Keisler
2011-10-17 15:20:02 UTC
Permalink
In your recovery.conf, you should also have a restore_command setting.
That's what the standby postgres will use to grab the archived WAL logs from
the master and it needs to. So yes, you need archive set to on and an
archive_command command setting on the master. You at least need that for
catching up from whatever happened between the pg_start_backup, rsync from
master to standby, then pg_stop_backup before it can start streaming
replication. Those steps are in the tutorial you have mentioned :).
Post by Evan Walter
I pretty much didn't change anything in the config files except what was in
the tutorial at
http://wiki.postgresql.org/wiki/Binary_Replication_Tutorial
standby_mode = 'on'
primary_conninfo = 'host=<servers ip here>'
on the master postgresql.conf I set
listen_address = '*'
wav_level = hot_standby
max_wal_senders = 3
I didn't change any of postgresql.conf Archiving settings. They all seem
to be commented out. Could that be the problem?
Evan
Post by Mark Keisler
Do not rsync the pg_xlog. Basically that error means that the
restore_command in your recovery.conf is not working. You have hot_standby
archiving going on the master and a recovery_command on the slave, right?
On Thu, Oct 13, 2011 at 10:41 AM, Evan Walter <
Post by Evan Walter
Hello,
I am somewhat new with postgresql trying to find a good method of
replication for my company.
I am running through the tutorials on binary replication for postgresql
9.1. Both servers are virtual box Ubuntu 10.10 on a laptop.
I ran this rsync -av --exclude pg_xlog --exclude postgresql.conf
/var/lib/postgresql/9.1/main/* postgres:<ip-address of
standby>:/var/lib/postgresql/9.1/main/
The standby server then will not restart. It says it is missing
pg_xlog/0000000000 ... files
I ran the rsync again not excluding the pg_xlog. This time both servers
restart but there doesn't seem to be any replication occurring.
I am curious why this is going on - why it didn't work excluding the
pg_xlog. Was there something wrong with my syntax? Is there something I am
missing not found in the tutorial?
I will appreciate any help, advice.
Thank you,
Evan
Evan Walter
2011-10-17 15:26:45 UTC
Permalink
Yes thank you.
I actually did get it working eventually, with the things you mentioned.
Also, the recovery.conf has to be in the directory that contains the data
folder! I previously had it in the folder with the config files, which in
my installation are different. Once I moved the recovery.conf (this was
actually figured out by a colleague), the replication was working
beautifully.

Thanks
Evan Walter
Post by Mark Keisler
In your recovery.conf, you should also have a restore_command setting.
That's what the standby postgres will use to grab the archived WAL logs from
the master and it needs to. So yes, you need archive set to on and an
archive_command command setting on the master. You at least need that for
catching up from whatever happened between the pg_start_backup, rsync from
master to standby, then pg_stop_backup before it can start streaming
replication. Those steps are in the tutorial you have mentioned :).
Post by Evan Walter
I pretty much didn't change anything in the config files except what was
in the tutorial at
http://wiki.postgresql.org/wiki/Binary_Replication_Tutorial
standby_mode = 'on'
primary_conninfo = 'host=<servers ip here>'
on the master postgresql.conf I set
listen_address = '*'
wav_level = hot_standby
max_wal_senders = 3
I didn't change any of postgresql.conf Archiving settings. They all seem
to be commented out. Could that be the problem?
Evan
Post by Mark Keisler
Do not rsync the pg_xlog. Basically that error means that the
restore_command in your recovery.conf is not working. You have hot_standby
archiving going on the master and a recovery_command on the slave, right?
On Thu, Oct 13, 2011 at 10:41 AM, Evan Walter <
Post by Evan Walter
Hello,
I am somewhat new with postgresql trying to find a good method of
replication for my company.
I am running through the tutorials on binary replication for postgresql
9.1. Both servers are virtual box Ubuntu 10.10 on a laptop.
I ran this rsync -av --exclude pg_xlog --exclude postgresql.conf
/var/lib/postgresql/9.1/main/* postgres:<ip-address of
standby>:/var/lib/postgresql/9.1/main/
The standby server then will not restart. It says it is missing
pg_xlog/0000000000 ... files
I ran the rsync again not excluding the pg_xlog. This time both servers
restart but there doesn't seem to be any replication occurring.
I am curious why this is going on - why it didn't work excluding the
pg_xlog. Was there something wrong with my syntax? Is there something I am
missing not found in the tutorial?
I will appreciate any help, advice.
Thank you,
Evan
Loading...