Skip to main content

Troubleshooting

The Dashboard Opens But Shows Database Unavailable

Check the connection string first:

DATABASE_URL="postgres://postgres:password@localhost:5432/my_database"

Common causes:

  • wrong password;
  • wrong database name;
  • PostgreSQL is not running;
  • wrong host or port;
  • Docker container is not reachable from the host app;
  • SSL is required by the database provider.

The dashboard blocks interactions while the database is unavailable.

Tables Are Missing

Check the configured schema:

pgDashboard({
schemaName: "public",
});

If your tables are in another schema, set that schema name.

Also confirm the PostgreSQL user has permission to see and select from the relations.

Functions Are Missing

Function execution is opt-in:

pgDashboard({
enableFunctions: true,
});

If it is disabled, the Functions tab stays unavailable.

CRUD Buttons Are Disabled

CRUD is opt-in:

pgDashboard({
enableCrud: true,
});

CRUD can also remain disabled for a relation when:

  • the relation is read-only;
  • no primary key is available;
  • the PostgreSQL user does not have the required permissions.

Express 5 Wildcard Route Errors

Older builds used a wildcard fallback that could fail in Express 5 with path-to-regexp.

Current versions use an Express-compatible fallback that works with Express 4 and 5.

SPA Reloads Return 404

Mount the dashboard router directly:

app.use("/admin/db", pgDashboard({ connectionString }));

The package handles the SPA fallback internally.