Uso de pglogical para sincronizar datos entre instancias
Todas las versiones de RDS para PostgreSQL disponibles actualmente admiten la extensión pglogical
. La extensión pglogical es anterior a la función de replicación lógica funcionalmente similar que se introdujo en la versión 10 de PostgreSQL. Para obtener más información, consulte Replicación lógica para Amazon RDS para PostgreSQL.
La extensión pglogical
admite la replicación lógica entre dos o más Instancias de base de datos de RDS para PostgreSQL. También admite la replicación entre diferentes versiones de PostgreSQL y entre bases de datos que se ejecutan en instancias de base de datos de RDS para PostgreSQL y clústeres de bases de datos de Aurora PostgreSQL. La extensión pglogical
utiliza un modelo de publicación y suscripción para replicar los cambios en las tablas y otros objetos, como secuencias, de un publicador a un suscriptor. Se basa en una ranura de replicación para garantizar que los cambios se sincronicen de un nodo publicador a un nodo suscriptor, que se define de la siguiente manera.
-
El nodo publicador es la instancia de base de datos de RDS para PostgreSQL, que es la fuente de datos que se van a replicar en otros nodos. El nodo publicador define las tablas que se van a replicar en un conjunto de publicaciones.
-
El nodo suscriptor es la instancia de base de datos de RDS para PostgreSQL que recibe las actualizaciones WAL del publicador. El suscriptor crea una suscripción para conectarse al publicador y obtener los datos WAL decodificados. Cuando el suscriptor crea la suscripción, se crea la ranura de replicación en el nodo del publicador.
A continuación, encontrará información sobre cómo configurar la extensión pglogical
.
Temas
- Requisitos y limitaciones de la extensión pglogical
- Configuración de la extensión pglogical
- Configuración de la replicación lógica para la instancia de base de datos de RDS para PostgreSQL
- Restablecimiento de la replicación lógica después de una actualización principal
- Administración de ranuras de replicación lógica para RDS para PostgreSQL
- Referencia de parámetros para la extensión pglogical
Requisitos y limitaciones de la extensión pglogical
Todas las versiones disponibles actualmente de RDS para PostgreSQL admiten la extensión pglogical
.
Tanto el nodo publicador como el nodo suscriptor deben estar configurados para la replicación lógica.
Las tablas que desee replicar desde un publicador a un suscriptor deben tener los mismos nombres y el mismo esquema. Estas tablas también deben contener las mismas columnas y las columnas deben utilizar los mismos tipos de datos. Tanto las tablas de los publicadores como las de suscriptores deben tener las mismas claves principales. Se recomienda utilizar únicamente la PRIMARY KEY como restricción única.
Las tablas del nodo suscriptor pueden tener restricciones más permisivas que las del nodo publicador para las restricciones CHECK y NOT NULL.
La extensión pglogical
proporciona funciones como la replicación bidireccional que no son compatibles con la función de replicación lógica integrada en PostgreSQL (versión 10 y posteriores). Para obtener más información, consulte PostgreSQL bi-directional replication using pglogical