There is a 3rd option - DBMirror, which comes as part of the Postgres distribution (look in the contrib/dbmirror directory).Hello,
in need to increase reliability of the service (and perhaps eventually offload main DB server) we are looking to setup replication for the database server. I found two solutions:
Slony ( http://gborg.postgresql.org/project/slony1/projdisplay.php ) PGCluster ( http://pgfoundry.org/projects/pgcluster )
I found that PgCluster supports multi-muster mode, which we can benefit from, but it's not required for "backup" which is #1 goal at the moment.
If anyone used those solutions, compared performance, reliability, etc - please share your experience / thoughts.
I looked at Slony, which seems to be a current favourite -but I couldn't get it working on my database (claimed my tables didn't have relevant keys - which they do). Slony-I had almost non-existent documentation which I always find prety unacceptable unless everything goes very smoothly..
I then found DBMirror - which I'm now using to replicate replicate from master to slave database, and then cascade replicating my slave to a 3rd off-site server.
Performance of DBMirror.pl (a Perl script that does the actual replication) was very poor - so I re-wrote it in C++. Some details at:
http://www.whitebeam.org/library/guide/TechNotes/replicate.rhtm
DBmirror doesn't replicate schema changes, which wasn't a problem for me since our schema changes very infrequently.
Hope that helps Pete -- http://www.yellowhawk.co.uk http://www.whitebeam.org -----
---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match