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