Skip to main content

Connecting PostgreSQL

What you'll need

  • Host and port of the database server (default port: 5432).
  • Database name.
  • A username and password — ideally a dedicated read-only role.
  • Whether the server requires SSL (recommended, and required by most managed providers).

Axiome only ever reads from your database. Create a dedicated role with just enough access:

CREATE ROLE axiome_reader LOGIN PASSWORD '...';
GRANT CONNECT ON DATABASE mydb TO axiome_reader;
GRANT USAGE ON SCHEMA public TO axiome_reader;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO axiome_reader;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO axiome_reader;

Add the connection in Axiome

  1. Go to Settings → Admin → Connections → Add Connection and choose PostgreSQL.
  2. Fill in Host, Port, Username, Password, and Database Name.
  3. Enable Use SSL if your server requires it.
  4. Click Test Connection, then Save.

The password is stored in Google Cloud Secret Manager and used server-side only.

The Add Connection dialog set to PostgreSQL, showing host, port, database, credentials and the Use SSL toggle.

Network access

Axiome's servers must be able to reach your database. If it sits behind a firewall or in a private network, allow inbound connections from Axiome — contact your Axiome representative for the addresses to allowlist.

Troubleshooting

SymptomLikely cause
Test times outHost/port unreachable — firewall or wrong host
Authentication failedWrong username/password, or the role can't CONNECT to this database
SSL errorThe server requires SSL and Use SSL is off (or vice versa)
Tables missing from semantic modelsThe role lacks USAGE on the schema or SELECT on the tables