PostgresDB 08006: Connection failure

Happens when the connection to the database fails.
  1. Check the PostgreSQL service status:
    • On Unix/Linux: sudo service postgresql status or systemctl status postgresql
    • On Windows, open Services from the Control Panel and look for PostgreSQL service.
  2. Review PostgreSQL Server Logs:
    • Default location varies, but check /var/log/postgresql/ on Linux or the data directory on Windows.
    • Look for entries around the time the error occurred to find specific reasons for failure.
  3. Verify Network Connectivity:
    • Ping the database server from the client machine: ping <database_server_ip>
    • If the database is on a remote server, use telnet <database_server_ip> 5432 to check if the PostgreSQL port is reachable.
  4. Check Database Connection Configuration:
    • Verify the connection details in your application configuration file or command line, including host, port, user, and password.
    • For a command line test: psql -h <host> -p <port> -U <user> -d <database_name>
  5. Ensure PostgreSQL is Listening on the Correct Port and Interfaces:
    • On the database server, check postgresql.conf for listen_addresses and port settings.
    • You can find postgresql.conf typically in the data directory /var/lib/postgresql/<version>/data/ on Linux.
  6. Review pg_hba.conf File:
    • Ensure your client’s IP address or subnet is allowed to connect to the database in the pg_hba.conf file, located in the same directory as postgresql.conf.
    • Changes to pg_hba.conf require reloading PostgreSQL: SELECT pg_reload_conf(); or systemctl reload postgresql on the server.
  7. Check for Active Connections and Locks:
    • If you can connect through another session or tool, check for excessive connections or locks that might prevent new connections:
      • For active connections: SELECT * FROM pg_stat_activity;
      • For locks: SELECT * FROM pg_locks JOIN pg_class ON pg_locks.relation = pg_class.oid;
  8. Restart PostgreSQL Service:
    • If it's safe to do so, try restarting the PostgreSQL service:
      • On Unix/Linux: sudo service postgresql restart or systemctl restart postgresql
      • On Windows, use the Services panel to restart the PostgreSQL service.
  9. Check System Resources:
    • Ensure the server has sufficient CPU, memory, and disk space:
      • On Unix/Linux, use commands like top, free -m, and df -h.
      • On Windows, use Task Manager or Resource Monitor.

Master

PostgresDB

in Minutes — Grab the Ultimate Cheatsheet

(Perfect for DevOps & SREs)

Most-used commands
Real-world configs/examples
Handy troubleshooting shortcuts
Your email is safe with us. No spam, ever.

Thankyou for your submission

We have sent the cheatsheet on your email!
Oops! Something went wrong while submitting the form.

PostgresDB

Cheatsheet

(Perfect for DevOps & SREs)

Most-used commands
Your email is safe with us. No spam, ever.

Thankyou for your submission

We have sent the cheatsheet on your email!
Oops! Something went wrong while submitting the form.

MORE ISSUES

Made with ❤️ in Bangalore & San Francisco 🏢

Doctor Droid