| From: | Eduar Flow <eduarshorybalbuena77(at)gmail(dot)com> |
|---|---|
| To: | Jorge Batista <Jorge(dot)Batista(at)premier-research(dot)com> |
| Cc: | Rajni Baliyan <saan654(at)gmail(dot)com>, Muhammet Kurtoğlu <muhammet(dot)kurtoglu(at)bisoft(dot)com(dot)tr>, akshay chandratre <akshaychandratre44(at)gmail(dot)com>, Mahendra Singh <msmahendrasingh18(at)gmail(dot)com>, Pgsql-admin <pgsql-admin(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: How to setup Multi-master replication on postgresql 18 |
| Date: | 2026-04-08 04:34:03 |
| Message-ID: | CALR9rdSLPbADaydbajsmjsAU7pBFT4c=K7XhRuXoGAJvxh64Bg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-admin |
1. Instalar PostgreSQL + BDR
BDR no viene incluido en PostgreSQL estándar.
Necesitas EDB Postgres Distributed (antes BDR)
Sitio: EnterpriseDB
2. Configurar parámetros (postgresql.conf)
Conf
wal_level = logical
max_replication_slots = 10
max_wal_senders = 10
max_worker_processes = 20
shared_preload_libraries = 'bdr'
3. Crear base de datos y habilitar BDR
SQL
CREATE DATABASE mydb;
\c mydb
CREATE EXTENSION bdr;
4. Crear nodo
SQL
SELECT bdr.create_node(
node_name := 'node1',
dsn := 'host=IP_NODE1 dbname=mydb user=postgres password=xxx'
);
5. Unir segundo nodo
En el segundo servidor:
SQL
SELECT bdr.join_node(
node_name := 'node2',
dsn := 'host=IP_NODE2 dbname=mydb user=postgres password=xxx',
join_using_dsn := 'host=IP_NODE1 dbname=mydb user=postgres password=xxx'
);
✔️ Ahora ambos pueden escribir (multi-master)
Yekma666
El mar, 7 de abr de 2026, 10:52, Jorge Batista <
Jorge(dot)Batista(at)premier-research(dot)com> escribió:
> PostgreSQL logical replication supports bidirectional setups, but conflict
> handling is not automated. The documentation itself highlights that
> conflicts can arise when multiple nodes accept writes and resolving them is
> left to the application or design strategy.
>
>
>
> If the requirement is strictly open-source and limited to core PostgreSQL,
> the most direct option would be bi-directional logical replication (native
> or pglogical).
>
>
>
> That said, PostgreSQL does not provide a fully managed multi-master
> solution. In practice, this means:
>
> - No built-in conflict resolution (conflicts can stop replication)
> - Risk of duplicate keys / concurrent update issues
> - Sequences need coordination (or UUIDs)
> - DDL is not automatically replicated
> - Operational complexity increases significantly
>
>
>
> Because of this, the safest approach is usually to define data ownership
> per node (e.g., by tenant or region) to avoid conflicts rather than trying
> to resolve them after the fact.
>
>
>
> Otherwise, pure core PostgreSQL multi-master setups can be difficult to
> operate reliably in production.
>
>
>
> Regards
>
>
>
> *From:* Rajni Baliyan <saan654(at)gmail(dot)com>
> *Sent:* Tuesday, April 7, 2026 4:16 AM
> *To:* Muhammet Kurtoğlu <muhammet(dot)kurtoglu(at)bisoft(dot)com(dot)tr>
> *Cc:* akshay chandratre <akshaychandratre44(at)gmail(dot)com>; Mahendra Singh <
> msmahendrasingh18(at)gmail(dot)com>; Pgsql-admin <
> pgsql-admin(at)lists(dot)postgresql(dot)org>
> *Subject:* Re: How to setup Multi-master replication on postgresql 18
>
>
>
> EXTERNAL: This email originated from outside of our organization. Do not
> click links or open attachments unless you recognize the sender and know
> the content is safe.
>
>
>
> Hi Muhammet,
>
> You can achieve at certain level multi master replication using postgres
> native logical replication. Latest version 18 has good conflict resolution
> as well.
>
> https://www.postgresql.org/docs/current/logical-replication.html
> <https://protect.checkpoint.com/v2/r01/___https:/www.postgresql.org/docs/current/logical-replication.html___.YzJ1OnByZzpjOm86MmJiNWMxY2U0NWVhZjVhZTRkYjk2YWRhODQwNTRlMjY6NzoyNDY2OjhlMmFjMzk4OTRkYjBlNTM0YTcyZTQyZmFhZjZlZTY5YzQyZDlhYWNlODFiZmY2Y2I4MGUwODEyYTEyYTJiN2M6aDpUOk4>
>
>
>
>
> On Tue, 7 Apr 2026, 5:17 pm Muhammet Kurtoğlu, <
> muhammet(dot)kurtoglu(at)bisoft(dot)com(dot)tr> wrote:
>
> You can use pg_logical extension then
>
> *Muhammet KURTOĞLU*
>
> T: +90(312) 220 12 20 <%2B90%28374%29%20262%2098%2000>
>
> F: +90(312) 286 00 10 <%2B90%28374%29%20262%2090%2091>
>
> muhammet(dot)kurtoglu(at)bisoft(dot)com(dot)tr <caner(dot)olkan(at)bisoft(dot)com(dot)tr>
>
>
>
>
>
>
>
>
>
>
> 7 Nis 2026 Sal, saat 10:09 tarihinde akshay chandratre <
> akshaychandratre44(at)gmail(dot)com> şunu yazdı:
>
> Hi Muhammet,
>
> Thanks for suggesting symetricds community.
>
> Will check that out. But my organization wants something open-source. And
> on core postgresql.
>
>
>
> On Mon, Apr 6, 2026 at 5:13 PM Mahendra Singh <msmahendrasingh18(at)gmail(dot)com>
> wrote:
>
> Dear Akshay,
>
>
>
> The answer is *EDB Postgres Distributed.*
>
>
>
> On Mon, Apr 6, 2026 at 11:09 AM Muhammet Kurtoğlu <
> muhammet(dot)kurtoglu(at)bisoft(dot)com(dot)tr> wrote:
>
> Hi,
>
> You can use symetricds community which resolves conflicts with predefined
> rules on master master replication
>
> Best REgards
>
>
>
>
>
> akshay chandratre <akshaychandratre44(at)gmail(dot)com>, 6 Nis 2026 Pzt, 09:25
> tarihinde şunu yazdı:
>
> Hi Everyone,
>
> The client required the multimaster replication on the production
> environment. I want help regarding the following things:
> 1. How to setup multi-master replication on postgresql ?
> 2. How to handle the conflicts regarding the writes on both masters
> servers ?
> 3. Is it reliable for production ? Any other suggestions or options for
> multimaster ?
>
> Postgresql V18
> Os: centOS
>
>
>
> Thanks in advance...
>
>
>
>
> --
>
> *Muhammet KURTOĞLU*
>
> T: +90(312) 220 12 20 <%2B90%28374%29%20262%2098%2000>
>
> F: +90(312) 286 00 10 <%2B90%28374%29%20262%2090%2091>
>
> muhammet(dot)kurtoglu(at)bisoft(dot)com(dot)tr <caner(dot)olkan(at)bisoft(dot)com(dot)tr>
>
>
>
>
>
>
>
> ------------------------------
>
> Notice: This e-mail is intended only for the named person or entity to
> which it is addressed and contains valuable business information that is
> privileged, confidential and/or otherwise protected from disclosure.
> Dissemination, distribution or copying of this e-mail or the information
> herein by anyone other than the intended recipient, or an employee, or
> agent responsible for delivering the message to the intended recipient, is
> strictly prohibited. All contents are the copyright property of the sender.
> If you are not the intended recipient, you are nevertheless bound to
> respect the sender's worldwide legal rights. We require that unintended
> recipients delete the e-mail and destroy all electronic copies in their
> system, retaining no copies in any media. If you have received this e-mail
> in error, please immediately notify us by returning the e-mail to the
> sender. We appreciate your cooperation.
>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | mahamood hussain | 2026-04-10 17:48:54 | Seeking Advice: PostgreSQL Performance Troubleshooting Without Third-Party Tools |
| Previous Message | Jorge Batista | 2026-04-07 16:51:51 | RE: How to setup Multi-master replication on postgresql 18 |