当我将服务器上的 postgres 连接到本地的 postico 时,出现此错误
could not connect to server: Operation timed out
Is the server running on host "http://159.65.65.203/" (92.242.140.2) and accepting
TCP/IP connections on port 5432?
我在任何地方都找不到 postgresql.conf 和 pg_hba.conf 文件,所以我创建了这些文件,如下图所示
我找到了这个解释,但仍然没有解决我的问题
Ubuntu does not use the standard pg_ctl for postgreSQL. Instead, it
uses pg_ctlcluster.
That in turn controls the different PostgreSQL clusters. When you do
an install of a new cluster, pg_ctlcluster is smart enough to put
postgresql.conf & pg_hba.conf into separate dirs.
So to be specific, /usr/lib/tmpfiles.d/postgresql.conf is just a tmp
file that you can ingnore, /etc/postgresql/9.4/main/postgresql.conf is
the original version for the 9.4 cluster and
/var/lib/postgresql/9.4/main/postgresql.auto.conf is the actual, live
version of the 9.4 cluster that you need to change to affect the 9.4
cluster. Likewise for the pg_hba.conf.
reference https://www.postgresql.org/message-
id/CANu8FiygR5CdeqRTiE0YM+BQk6aK+qZyw2frH_FWV27J1exong@mail.gmail.com
这里我如何配置 postgresql.conf
port=5432
listen_addresses='*'
这里我是如何配置 pg_hba.conf
host all all 0.0.0.0/0 md5
host all all ::/0 md5
当我跑步时
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program
name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN
29761/postgres
tcp6 0 0 :::22 :::* LISTEN -
显然 5432 并非对所有连接都开放。当我使用邮递员进行 api 调用时似乎有效。我目前使用的 mac 防火墙没有打开,我的服务器在 digitalocean 上使用 Ubuntu 16.04.6 (LTS) x64。
这是 postgres 文件的路径
postgres@borroupapi:~/9.5/main$
当我运行 find / -name postgresql.conf 我得到这个
/usr/lib/tmpfiles.d/postgresql.conf
但我找不到登录 postgres 用户的路径