Troubleshooting
Most psql+ issues are ordinary PostgreSQL connection or permission problems wearing a familiar face. Work through the cases below before assuming something is wrong with the shell.
Connection refused
psql+: error: connection to server at "db.internal" (10.0.0.5), port 5432 failed: Connection refused
The server isn't reachable at that address. Check, in order:
- The host and port are correct and the server is actually listening there.
- A firewall, bastion, or VPN isn't blocking the route.
- The PostgreSQL server is configured to accept TCP connections (
listen_addresses).
Authentication failed
psql+: error: connection failed: FATAL: password authentication failed for user "app"
Verify the username and password, the target database name, and that the user is permitted to log in. If you pass a connection string, make sure your shell did not split it on ? or & — quote the whole URL.
SSL required
psql+: error: connection failed: FATAL: no encryption: server requires SSL connection
The server only accepts encrypted connections. Add sslmode to your connection string:
postgres://app@db.internal:5432/orders?sslmode=require
Use verify-full if you also want certificate verification. The reverse error (server does not support SSL) means you requested SSL from a server that has it disabled — drop the sslmode parameter or set it to prefer.
Autocomplete isn't suggesting columns
Schema-aware completion reads the system catalog. If only keywords complete and no columns or tables appear:
- Confirm your
search_pathincludes the schema you expect. The prompt shows the activesearch_path; unqualified names resolve against it. - Confirm your role has permission to read the catalog and
USAGEon the schema. A locked-down read-only role may not see objects it cannot access. - Qualify the name (
schema.table) to check whether the object resolves at all.
AI isn't responding
If ?? does nothing or reports it is unavailable, AI is either disabled or missing a key. AI is opt-in:
- Confirm
enabled = trueunder[ai](orRILLENCE_AI_ENABLED=true). - Confirm the variable named by
api_key_envis exported and holds a valid key.
See Configuration for the full setup. Remember that all other features work with AI off.
Output is too wide to read
Wide rows wrap and become unreadable in a narrow terminal. Switch to expanded output, which prints one column per line:
\x
Run the query again. Toggle \x once more to return to normal table output.