Разница host
и hostname
Разница host
и hostname
действительно зависит от контекста. В контексте соединения psycopg2
и PostgreSQL
host
обычно означает IP-адрес сервера PostgreSQL или разрешаемое имя сервера PostgreSQL, например, имя DNS, если оно имеется. Если вы используете сервер linux, вывод команды hostname
вряд ли будет работать в вашем случае.
psycopg2
connection
Строка подключения выглядит нормально. Но я предлагаю вам использовать следующий формат подключения:
import psycopg2
try:
connection = psycopg2.connect(user = "sysadmin",
password = "pynative@#29",
host = "127.0.0.1",
port = "5432",
database = "postgres_db")
except (Exception, psycopg2.Error) as error :
print ("Error while connecting to PostgreSQL", error)
Вы должны использовать IP-адрес в качестве значения host
.
Устранение неполадок
В случае ошибка соединения, вы должны использовать другие инструменты для проверки соединения с сервером PostgreSQL, такие как psql
, pgAdmin4
или DBeaver
.
Вы также можете использовать инструменты telnet
или netcat
для проверить сетевое соединение сервера PostgreSQL, например
telnet PostgreSQL_ip_address 5432
nc -v PostgreSQL_ip_address 5432