PostgreSQL安裝后默認(rèn)只能localhost:5432訪問
檢驗(yàn)方法:
curl localhost:5432
# 訪問成功提示
curl: (52) Empty reply from server
curl 127.0.0.1:5432
# 訪問不成功提示
curl: (7) Failed to connect to 172.17.201.227 port 5432: Connection refused
修改pg_hba.conf
pg_hba.conf和postgresql.conf的存放目錄都在(9.5版本)/etc/postgresql/9.5/main
host all all 192.168.1.0/24 trust
表示允許網(wǎng)段192.168.1.0上的所有主機(jī)使用所有合法的數(shù)據(jù)庫用戶名訪問數(shù)據(jù)庫,
其中,數(shù)字24是子網(wǎng)掩碼,表示允許192.168.1.0–192.168.1.255的計算機(jī)訪問
修改postgresql.conf
修改listen_addresses='localhost', 并放開注釋(默認(rèn)監(jiān)聽localhost)
# 192.168.1.111 為postgresql本機(jī)內(nèi)網(wǎng)地址
listen_addresses='192.168.1.111'
重啟postgresql
sudo /etc/init.d/postgresql restart
在本機(jī)
curl 192.168.1.111:5432
# 訪問成功提示
curl: (52) Empty reply from server
在內(nèi)網(wǎng)其他機(jī)器
curl 192.168.1.111:5432
# 訪問成功提示
curl: (52) Empty reply from server
其他 創(chuàng)建用戶
進(jìn)入psql控制臺
$ sudo -u postgres -i
$ psql
創(chuàng)建用戶 密碼
postgres=# CREATE USER myusername WITH PASSWORD 'mypassword' CREATEDB;
創(chuàng)建數(shù)據(jù)庫 用戶授權(quán)
postgres=# CREATE DATABASE mydb;
postgres=# GRANT ALL PRIVILEGES ON DATABASE mydb to myusername;
postgres=# \q
測試
$ psql -d mydb;
mydb=# \dt
補(bǔ)充:PostgreSQL數(shù)據(jù)庫開啟IP訪問功能
在PG的安裝目錄的data子文件夾下。
1.postgresql.conf
檢查下面的值是否是監(jiān)聽所有ip地址的連接請求,如下:
如果是則不需要修改。
2.pg_hda.conf
在末尾的地方添加一行,如下:
host all all 0.0.0.0/0 md5
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- PostgreSQL 允許遠(yuǎn)程訪問設(shè)置的操作
- Postgresql開啟遠(yuǎn)程訪問的步驟全紀(jì)錄
- PostgreSQL數(shù)據(jù)庫中跨庫訪問解決方案
- 解決postgresql無法遠(yuǎn)程訪問的情況