Re: Replicacion con Postgres 10

From: Jaime Soler <jaime(dot)soler(at)gmail(dot)com>
To: Edwin Quijada <listas_quijada(at)hotmail(dot)com>
Cc: gustavo_vaccaro(at)fibertel(dot)com(dot)ar, pgsql-es-ayuda(at)lists(dot)postgresql(dot)org
Subject: Re: Replicacion con Postgres 10
Date: 2017-10-30 21:20:53
Message-ID: CAKVUGgSNHL8iQ6Kq94Bq5UG06xUBFoi1KZaJ0fszo_ugq8UKng@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

A ver pglogical tiene como finalidad la replicación lógica pero existe
desde hace algunos años cuando todavía no existían algunos mecanismos en el
core y también porque algunos desarrollos se pueden acometer como extensión
y luego ir intentando añadir las funcionalidades de esta extensión en el
core, como ahora ha ocurrido en la v10 y pasará en v11 y puede que v12 para
intentar completar el resto de las funciones de la extensión.

Tienes la doc aquí, donde explican claramente las funciones que soporta
siendo compatible con pg v10
https://www.2ndquadrant.com/en/resources/pglogical/pglogical-docs/

El 30 oct. 2017 22:07, "Edwin Quijada" <listas_quijada(at)hotmail(dot)com>
escribió:

>
>
>
> ------------------------------
> *From:* Jaime Soler <jaime(dot)soler(at)gmail(dot)com>
> *Sent:* Sunday, October 29, 2017 8:47 PM
> *To:* gustavo_vaccaro(at)fibertel(dot)com(dot)ar
> *Cc:* pgsql-es-ayuda(at)lists(dot)postgresql(dot)org
> *Subject:* Re: Replicacion con Postgres 10
>
> La versión de logical replication de v10 aún no implementa estrategias de
> resolución de conflictos, para ello o te esperas a la v11 o usas pglogical
> que sí lo tiene, a parte de más funcionalidades que con el tiempo pasarán
> al core de postgresql
>
> No entedi bien esta parte aqui, que es pglogical ? Suponia que la version
> de Postgres traia pglogical pero me dices que es distinta. Cual es la
> diferencia, donde puedo encontrar a pglogical ?
>
>
>
> El 25 oct. 2017 12:35, "Gustavo Vaccaro" <gustavojosevaccaro(at)gmail(dot)com>
> escribió:
>
>> Jaime,
>>
>> gracias por tus comentarios.
>>
>> Hice tantas pruebas que no me di cuenta que estaba trabajando con una
>> vista.
>>
>> Saludos
>>
>> Gustavo J. Vaccaro
>> http://www.gjv.com.ar
>>
>> El 25/10/2017 a las 4:09, Jaime Casanova escribió:
>>
>> 2017-10-24 7:06 GMT-05:00 Gustavo Vaccaro <gustavojosevaccaro(at)gmail(dot)com> <gustavojosevaccaro(at)gmail(dot)com>:
>>
>> Hola,
>>
>> ayer hice una simulacion de replicacion con Postgres 10.
>> Instale dos server (virtuales) con sus respectivos postgres, a uno le puse una base de datos con datos cargados y a la otra solo la
>> estructura (sin datos).
>> Hice todos los pasos para crear la replicacion (publicacion y suscripcion) y funciono perfecto.
>> Me asombro lo facil que es y lo bien que funciona.
>>
>>
>> que bueno que opines eso, se lo haré saber a mis compañeros de
>> 2ndQuadrant que desarrollaron esta característica
>>
>>
>> Todos los cambios son replicados sin problemas hasta que force un conflicto.
>> Di de alta un registro en la base de datos que tiene la suscripcion y despues lo di de alta en la publicacion.
>> El log me indica que la llave ya existe (el registro existe) y por lo tanto se detiene la replicacion.
>>
>> Mis preguntas son:
>>
>> 1) ¿Tengo alguna funcion o consulta que me permita detectar los conflictos sin mirar el log?
>>
>>
>> no, la replicación lógica no pretende permitir escrituras en el origen
>> y en la réplica. para eso existe BDR que provee replicación
>> bi-direccional y resolución de conflictos
>>
>>
>> 2) ¿Como hago para que continue la replicacion?
>> La respuesta simple es eliminar el registro que de la suscripcion.
>> Pero queria ver si se podia saltear la instruccion o algo parecido.
>> Encontre esta funcion pg_replication_origin_advance(node_name text, lsn pg_lsn) pero no se como pasar el parametro lsn.
>> Probe con este formato pg_replication_origin_status('tdf'::text, '0/31CFECD8'::pg_lsn) y me tira el error
>> "no existe la función pg_replication_origin_status(text, pg_lsn)"
>>
>>
>> eso es porque pg_replication_origin_status es una vista, no una función. prueba:
>> select * from pg_replication_origin_status;
>>
>>
>>
>>
>>
>>
>> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient> Libre
>> de virus. www.avg.com
>> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient>
>> <#m_9064897466375398758_m_-8306565589034680803_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>>
>

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Luis Muro 2017-10-30 23:19:31 Re: Informacion archivos base de datos
Previous Message Edwin Quijada 2017-10-30 21:07:09 Re: Replicacion con Postgres 10