Overview¶
pg_auto_mv is a pure SQL PostgreSQL extension. It has no compiled C code and no background worker of its own. All refresh execution is handled by the pg_relay Processor, which must already be running and connected to the same database before pg_auto_mv is installed.
On a self-managed PostgreSQL installation, pg_auto_mv is installed with CREATE EXTENSION pg_auto_mv after pg_relay is installed. On a managed cloud database service, this is not possible — cloud providers do not permit installing arbitrary third-party extensions from the filesystem.
This guide explains the workaround — which is straightforward and works on all managed services — and provides step-by-step setup instructions for:
- AWS RDS for PostgreSQL
- AWS Aurora for PostgreSQL
- Azure Database for PostgreSQL Flexible Server
- Google Cloud SQL for PostgreSQL
- Other managed services — DigitalOcean, Neon, Railway, Render, Supabase, and similar platforms
Because pg_auto_mv is pure SQL and because the pg_relay Processor is already deployed as part of the pg_relay setup, installing pg_auto_mv on a cloud service is simpler than installing pg_relay: there is no binary to deploy or configure, no service to start, and no additional compute to provision.