2016-07-19 35 views
0

在postgresql.conf裏,我有:訪問遠程的PostgreSQL與pgAdmin的

listen_addresses = "*" 

我pg_hba.conf的樣子:

local all    postgres        md5 
# TYPE DATABASE  USER   ADDRESS     METHOD 
# "local" is for Unix domain socket connections only 
local all    all          peer 
# IPv4 local connections: 
host all    all    127.0.0.1/32   md5 
# IPv6 local connections: 
host all    all    ::1/128     md5 
#host all    all    myIPADDRESS   md5 

如果我去掉最後一行

  1. 說的pgadmin它無法訪問並確定端口是否可訪問。我已經刷新了iptables沒有規則,所以防火牆不會阻止它。
  2. 從我的腳本數據庫本地訪問不工作

隨着最後一行說:

  1. pgAdmin的說,對我的IP地址沒有pg_hba.con進入
  2. 我能從我的腳本在服務器上本地訪問數據庫

我缺少什麼使配置正確?

謝謝。

+0

你應該顯示確切的文件和確切的錯誤。一切看起來基本正確,但實際配置中可能存在一個小錯誤。 –

+0

是你完整的'pg_hba.conf'嗎?您不會從「pgadmin」配置中提供任何信息,這一點也很重要。端口定義是否匹配那裏和'postgresql.conf'?當你說「從你的腳本進行本地訪問」時,你是指在服務器上本地運行,還是在本地機器上運行? – Feneric

+1

'myIPADDRESS'應該像'123.456.789.123/32'(帶面具)。 – klin

回答

0

看着this的帖子。添加到pg_hba.conf後:

host all    all    ::/0     trust 
host all    all    my.ipv4.IP/32  trust 

它現在有效。

0

不知道命令是否在pg_hba.conf中很重要,但是,我把它放在頂部,並嘗試使用和不使用IP,並且都工作。

通過命令行連接並且pgAdmin沒有在RDS上與AWS連接,與psql有同樣的問題。我確實將我的RDS設置爲公開訪問。我確信我的ACL和安全組是敞開的,仍然問題,所以,我做了以下內容: sudo find . -name *.conf 然後sudo nano ./data/pg_hba.conf 然後加入到指令的頂部pg_hba.conf文件host all all 0.0.0.0/0 md5 和pgAdmin的自動登錄我

這也先後在pg_hba.conf文件 host all all md5沒有任何IP地址,這也跟我的IP地址host all all <myip>/32 md5

補充說明的工作,我的RDS是我的默認VPC。在我的非默認VPC中,我有一個完全相同的RDS實例,具有與默認VPC相同的安全組,ACL和安全組設置,我無法使其工作。不知道爲什麼,但那是另一天。