[英]Connect to PostgreSql database in Linux VirtualBox from Win7
正如標題中所說,我試圖從 Win7 主機訪問 Linux Centos 5.8 中建立的 Postgres 9.3,它位於同一台機器上的 VirtualBox 中。 我正在嘗試從 PGAdmin 訪問它,當我從 Win7 服務啟動 Postgre 時一切正常,因此 PGAdmin 配置良好。
我嘗試了什么? 我已經閱讀了很多關於這個主題的文章,甚至在這個論壇上提出了一些問題,但沒有任何效果。 我有:
只是提一下。 當服務在虛擬linux啟動時,我可以從linux訪問,所以服務正常啟動。 問題是 windows 沒有看到該服務。 當服務從 linux 啟動時,我可以在 Win 中啟動相同的服務,反之亦然,盡管端口 5432 應該被占用。
對我來說最可疑的部分是第 3) 點,因為我不確定我是否已將正確的地址放在規則中。 根據 my.network,該地址因文章而異,如果有人能向我解釋如何確定將哪個地址(或范圍)放在那里,我將不勝感激。 或者如果可能的話,一些其他的建議。 謝謝。
解決了。
更換:
“主機全部10.0.2.1/24 md5”與“host all all 0.0.0.0/0 trust”解決了它。
Filip 的解決方案有效,但您可以進一步調整它。
首先,在 VM 中啟用 Adapter 2 並將其設置為 Host-only Adapter:
第二個 go 到你的主機,找到它的 ip 地址。
這可以通過在您的 windows 主機上運行 ipconfig 來找到。
現在您需要編輯 VMBox 中的兩個文件。
首先是 postgresql.conf
sudo nano /etc/postgresql/<version>/main/postgresql.conf
並添加以下行:
listen_addresses = '*'
保存然后編輯 pg_hba.conf
sudo nano /etc/postgresql/<version>/main/pg_hba.conf
在這里你需要添加你的主機 ip(在我的例子中是 192.168.56.1:
host all all 192.168.56.1/0 trust
保存重啟 postgresql
sudo /etc/init.d/postgresql restart
現在您可以使用 pgadmin 連接到 vm postgresql。
方便!
在我的情況下, pg_hba.conf
下行添加到pg_hba.conf
就足夠了:
host all all 10.0.0.0/16 md5
然后重啟:
sudo /etc/init.d/postgresql restart
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.