所有。我有一个新的Ubuntu 17.04服务器设置。我可以通过ssh成功访问它。另外,我安装了postgresql数据库。它已配置为通过以下配置接受远程连接:
的pg_hba.conf
host all all 0.0.0.0/0 md5
postgresql.conf中
listen_addresses = '*'
但是当我尝试从计算机访问数据库时,出现以下错误:
psql -h [SERVER_IP] -d db_production -U dbuser
psql: SSL error: unknown protocol
expected authentication request from server, but received S
我还有一个在服务器内部运行的docker容器。如果我通过/ bin / bash访问它并尝试连接服务器db,我会收到此错误:
psql -h [SERVER_IP] -d db_production -U dbuser
psql: could not connect to server: Connection refused
Is the server running on host "[SERVER_IP]" and accepting
TCP/IP connections on port 5432?
端口5432已打开,防火墙已禁用。有没有人经历过那个?
答案 0 :(得分:0)
首先,当您连接到Docker时,您是否使用本地服务器主机?在这种情况下,服务器IP应该为localhost
或127.0.0.1
。
尝试使用完整的数据库URL:
psql postgres://dbuser:dbPass@SERVER_IP:5432/dbname?sslmode=prefer