If you have a question that is not answered here, try checking the detailed documentation or send an email to the Bucardo-general mailing list.
Bucardo is a replication program for two or more Postgres databases. Specifically, it is an asynchronous, multi-master, master-slave table-based replication system. Read the overview section for more details on how it all works. It is written in Perl, and uses extensive use of triggers, Pl/Pgsql, and Pl/PerlU.
Bucardo is a Perl script that requires the following modules to be installed before it can be run:
Bucardo requires a database to install the main bucardo schema on. This database must be Postgres version 8.1 or higher, and must have both the languages Pl/Pgsql and Pl/perlU installed. In addition, the install script requires installation as a superuser: creating a new user named 'bucardo' for this purpose is highly recommended.
Databases involved in replication must be Postgres version 8.1 or higher. The language Pl/pgsql must be available as well, unless the database is only used as a target for "fullcopy" syncs, in which case 8.1 is the only requirement.
Bucardo requires a Unix-like system. Currently, it has only been tested on Linux variants, but there is no reason to suspect that it should not work on BSD, Solaris, and other similar systems. Bucardo will not currently work on Win32 systems, but the ability to do so is probably not that difficult to achieve at this point.