配置PostgreSQL遠端訪問

2021-07-02 21:28:26 字數 1797 閱讀 6133

編輯資料資料夾下的pg_hba.conf檔案,找到

# type  database        user            address                 method

# ipv4 local connections:

host    all             all             127.0.0.1/32            md5

host   testdb    postgres   192.1.1.2/32md5  //新增加行

# ipv6 local connections:

host    all             all             ::1/128                 md5

新增加行說明

資料庫名與使用者名稱注意大小寫,postgresql是區分大小寫的。 testdb->資料庫名 postgres->使用者名稱

address 的值的格式為: ip/數值

數值取值範圍為:0,8,16,24,32,即表示掩碼bit的個數;

例如:32 -> 192.168.1.1/32 表示必須是來自這個ip位址的訪問才合法;

24 -> 192.168.1.0/24 表示只要來自192.168.1.0 ~ 192.168.1.255的都合法;

16 -> 192.168.0.0/16 表示只要來自192.168.0.0 ~ 192.168.255.255的都合法;

8   -> 192.0.0.0/16 表示只要來自192.0.0.0 ~ 192.255.255.255的都合法;

0   -> 0.0.0.0/0 表示全部ip位址都合法,/左邊的ip位址隨便了只要是合法的ip位址即可;

method指定如何處理客戶端的認證。常用的有ident,md5,password,trust,reject

dent是linux下postgresql預設的local認證方式,凡是能正確登入伺服器的作業系統使用者(注:不是資料庫使用者)就能使用本使用者對映的資料庫使用者不需密碼登入資料庫。使用者對映檔案為pg_ident.conf,這個檔案記錄著與作業系統使用者匹配的資料庫使用者,如果某作業系統使用者在本檔案中沒有對映使用者,則預設的對映資料庫使用者與作業系統使用者同名。比如,伺服器上有名為user1的作業系統使用者,同時資料庫上也有同名的資料庫使用者,user1登入作業系統後可以直接輸入psql,以user1資料庫使用者身份登入資料庫且不需密碼。很多初學者都會遇到psql -u username登入資料庫卻出現「username ident 認證失敗」的錯誤,明明資料庫使用者已經createuser。原因就在於此,使用了ident認證方式,卻沒有同名的作業系統使用者或沒有相應的對映使用者。解決方案:1、在pg_ident.conf中新增對映使用者;2、改變認證方式。

md5是常用的密碼認證方式,如果你不使用ident,最好使用md5。密碼是以md5形式傳送給資料庫,較安全,且不需建立同名的作業系統使用者。

password是以明文密碼傳送給資料庫,建議不要在生產環境中使用。

trust是只要知道資料庫使用者名稱就不需要密碼或ident就能登入,建議不要在生產環境中使用。

reject是拒絕認證。

在檔案查詢 listen_addresses,他的值說明

如果希望只能從本地計算機訪問postgresql資料庫,就將該項設定為'localhost';

如果希望從區域網訪問postgresql資料庫,就將該項設定為postgresql資料庫的區域網ip位址;

如果希望從網際網路訪問postgresql資料庫,就將該項設定為postgresql資料庫的網際網路ip位址;

如果希望從任何地方都可以訪問postgresql資料庫,就將該配置項設定為「*」;

Postgresql12 安裝及設定遠端訪問

1.安裝 centos 7 拉取rp包,並install yum install install pg服務 yum install postgresql12 server 初始化db usr pgsql 12 bin postgresql 12 setup initdb 啟動服務 systemctl...

PostgreSQL 配置遠端訪問

配置遠 程連線postgresql資料庫的步驟很簡單,只需要修改data目錄下的 pg hba.conf 和postgresql.conf。pg hba.conf 配置對資料庫的訪問許可權,postgresql.conf 配置postgresql資料庫伺服器的相應的引數。修改pg hba.conf檔...

PostgreSql 配置遠端連線

修改 var lib pgsql 10 data pg hba.conf 配置對資料庫的訪問許可權 local is for unix domain socket connections only local all all password ipv4 local connections host ...