

# Administración de ranuras lógicas de RDS para PostgreSQL
<a name="Appendix.PostgreSQL.CommonDBATasks.pglogical.slot.synchronization"></a>

A partir de la versión 17 de Community PostgreSQL, se ha introducido una nueva característica para sincronizar automáticamente las ranuras de replicación lógica de los servidores principales a los servidores en espera mediante el parámetro `sync_replication_slots` o la función relacionada `pg_sync_replication_slots()`, que sincroniza manualmente las ranuras durante la ejecución.

Estas características están disponibles a partir de la versión 17 de RDS para PostgreSQL. Una configuración típica tendrá una instancia principal y su [réplica de lectura](USER_PostgreSQL.Replication.ReadReplicas.md), así como un suscriptor de replicación lógica a la principal.

Asegúrese de que la suscripción se cree con la opción de conmutación por error establecida en true:

```
CREATE SUBSCRIPTION subname CONNECTION 'host=...' PUBLICATION pubname WITH (failover = true);
```

Esto crea una ranura lógica en el publicador con la conmutación por error habilitada.

```
postgres=> SELECT slot_name, slot_type, failover FROM pg_catalog.pg_replication_slots;
 slot_name | slot_type | failover 
-----------+-----------+----------
 subname   | logical   | t
(1 row)
```

Al habilitar la sincronización de ranuras, todas las ranuras de replicación lógica de conmutación por error del servidor principal se crean automáticamente en los servidores físicos y en espera y se sincronizan de forma periódica. Asegúrese de que se hayan establecido los siguientes valores mediante [grupos de parámetros](USER_WorkingWithParamGroups.Associating.md):
+ `rds.logical_replication` debe ser `1` para habilitar la replicación lógica
+ `hot_standby_feedback` debe ser `1` en la instancia en espera
+ Debe establecerse `rds.logical_slot_sync_dbname` en la instancia en espera en un nombre válido de base de datos

  El valor predeterminado del parámetro es `postgres`. Si la instancia de publicación lógica tiene la base de datos de `postgres`, no es necesario cambiar el parámetro predeterminado.
+ Debe establecerse `synchronized_standby_slots` en la instancia principal en la ranura de replicación física de la instancia en espera destinada a sincronizarse
+ `sync_replication_slots` debe ser `1` para habilitar la sincronización automática

Con una ranura de suscripción habilitada para la conmutación por error y los valores de parámetros anteriores, cuando se promociona una instancia en espera, el suscriptor puede modificar su suscripción a la instancia recién promovida y continuar con la replicación lógica sin problemas.