Psycopg2 reporting pg_hba.conf error

前端 未结 2 1039
隐瞒了意图╮
隐瞒了意图╮ 2021-02-19 12:56

I\'ve run into a weird situation while trying to use PostgreSQL and Psycopg2. For some reason, every time I attempt to connect to the postgre database via python, I get the foll

相关标签:
2条回答
  • 2021-02-19 13:36

    I recently got into this same issue and I found the solution for this problem.

    System:

    1. I have an application server (with these packages installed python, django, psycopg2 and postgres client 9.6.1 (postgresql-9.6.1.tar.gz)), for instance ip address 10.0.0.1(a private address).
    2. And AWS postgres RDS server "aws_rds_host_name" or any database IP address.

    Error:

    django.db.utils.OperationalError: FATAL: no pg_hba.conf entry for host "10.0.0.1", user "your_user", database "your_db", SSL off

    Solution:

    While installing the postgres client 9.6.1 source package in application server 10.0.0.1, we have to pass an argument "--with-openssl". I suggest to remove the existing the postgres client and install with below steps.

    1. Download the postgres client source package 9.6.1 (postgresql-9.6.1.tar.gz)
    2. Untar the package postgresql-9.6.1.tar.gz.
    3. ./configure --prefix="your_preferred_postgres_path_if_needed" --with-openssl (this '--with-openssl' argument is important to get rid of that error)
    4. make
    5. make install
    6. After successful installation, that error didn't occur when we ran the django project with psycopg2.

    I hope this solution helps someone.

    0 讨论(0)
  • 2021-02-19 13:45

    Typical explanations include:

    • You are connecting to the wrong server.
      Is the DB server running on the same host as Python does?

    • You got the wrong port.
      Check the server log if you see a connection attempt. You have to log connections for that, of course. See the config parameter log_connections.

    • You did not reload (SIGHUP) the server after changing pg_hba.conf - or reloaded the wrong cluster (if you have multiple DB clusters).
      Use pg_ctl or pg_ctlcluser on Debian and derivatives for that.

    0 讨论(0)
提交回复
热议问题