pg_dump version mismatch 🐘 PostgreSQL

pg_dump: error: aborting because of server version mismatch

Your pg_dump client is older than the server you’re dumping.

Seen on: PostgreSQL

Meaning

pg_dump must be the same major version or newer than the server. Ubuntu’s default client lags behind managed servers (RDS, Supabase).

Common causes

  • Old postgresql-client package
  • Multiple versions installed, older one first on PATH

⚡ Quick fix

  1. Install the matching client (apt install postgresql-client-16 from the PGDG repo)
  2. Call the versioned binary directly
  3. Run pg_dump inside a postgres:16 container

Detailed fix by platform

Docker

  1. docker run --rm postgres:16 pg_dump "$DATABASE_URL" > dump.sql

How to diagnose

  1. Versions — pg_dump --version vs SELECT version()
  2. Recent change — Did it start after a deploy, upgrade, or configuration change? Compare with the last working version.

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.