PlanetScale para Postgres se encuentra actualmente en acceso temprano.
Versiones compatibles de Postgres
Habilitar la replicación lógica
-
Para habilitar la replicación en su instancia de Postgres, debemos asegurarnos de que estén configurados los siguientes parámetros:
Para comprobarlo, puede ejecutar el siguiente comando SQL:La salida debería ser
logicalde forma predeterminada. Si no es así, inicie sesión en la consola de PlanetScale, vaya aCluster configuration->Parametersy desplácese hacia abajo hastaWrite-ahead logpara cambiarlo.
- Además, se recomienda aumentar el valor de
max_slot_wal_keep_sizerespecto a su valor predeterminado de 4GB. Esto también se hace desde la consola de PlanetScale; vaya aCluster configuration->Parametersy, a continuación, desplácese hacia abajo hastaWrite-ahead log. Para ayudarle a determinar el nuevo valor, consulte aquí.
Crear un usuario con permisos y una publicación
postgres.<...> y ejecute los siguientes comandos:
-
Cree un usuario específico para ClickPipes:
-
Conceda acceso de solo lectura a nivel de esquema al usuario que creó en el paso anterior. El siguiente ejemplo muestra los permisos para el esquema
public. Repita estos comandos para cada esquema que contenga tablas que quiera replicar: -
Conceda privilegios de replicación al usuario:
- Cree una publicación con las tablas que quiera replicar. Recomendamos encarecidamente incluir en la publicación solo las tablas que necesite para evitar una sobrecarga de rendimiento.
-
Para crear una publicación para tablas específicas:
-
Para crear una publicación para todas las tablas de un esquema específico:
-
Para crear una publicación para todas las tablas de un esquema específico:
clickpipes contendrá el conjunto de eventos de cambio generados a partir de las tablas especificadas, y más adelante se usará para ingestar el flujo de replicación.
Consideraciones
- Para conectarse a PlanetScale Postgres, es necesario añadir la rama actual al nombre de usuario creado anteriormente. Por ejemplo, si el usuario creado se llama
clickpipes_user, el usuario real que debe proporcionarse durante la creación de ClickPipe esclickpipes_user.branch, dondebranchhace referencia al “id” de la rama actual de PlanetScale Postgres. Para identificarlo rápidamente, puede consultar el nombre de usuario del usuariopostgresque utilizó antes para crear el usuario; la parte que aparece después del punto corresponde al id de la rama. - No utilice el puerto
PSBouncer(actualmente6432) para pipes de CDC que se conecten a PlanetScale Postgres; debe usarse el puerto estándar5432. Cualquiera de los dos puertos puede usarse para pipes solo de carga inicial. - Asegúrese de conectarse únicamente a la instancia principal; la conexión a instancias de réplica no es compatible actualmente.