PlanetScale offers robust database replication solutions for MySQL and Postgres, focusing on high availability and data consistency. For MySQL, best practices include active/passive configurations, using GTIDs for transaction tracking, semi-synchronous replication for enhanced consistency with configurable timeouts, and optimizing log storage. The platform emphasizes proactive monitoring and a clear failover strategy. For cross-datacenter replication, asynchronous mode is recommended due to late This post details how PlanetScale's custom Kubernetes operator enhances Postgres high availability by actively managing logical replication slots during cutovers. It explains the importance of `failover = true` for logical slots to ensure they are synchronized with replicas, preventing data loss for downstream consumers. The operator detects misconfigurations, alerts users, and blocks planned cutovers that would compromise replication slot integrity. It also manages `synchronized_standby_slots` to prevent a single dead replica from blocking all logical replication. The post also clarifies the trade-offs of enabling `hot_standby_feedback` and `sync_replication_slots`.
All PlanetScale trails