Ssh
無法連接到伺服器上的 Postgresql
在 Digital Ocean 上,我可以連接到 Postgresql:
psql -d my_db -U my_name
它要求我輸入密碼,然後我成功進入。但是從我的本地電腦我無法:
psql -d my_db -U my_name -h x.x.x.x
什麼都沒有發生。這是我的 /etc/postgresql/9.4/main/pg_hba.conf
# Database administrative login by Unix domain socket local all postgres peer # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: host all all 0.0.0.0/0 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. #local replication postgres peer #host replication postgres 127.0.0.1/32 md5 #host replication postgres ::1/128 md5
檢查並確保 postregsql 正在偵聽您的介面 IP(不僅僅是 127.0.0.1)。
ss -ltn
如果沒有,修改
listen_addresses
為 * 或你想要的 IP。這些設置應該在postgresql.conf
通常位於 postgresql 數據目錄中的文件中。https://www.postgresql.org/docs/9.4/static/runtime-config-connection.html