国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PostgreSQL數據庫免密登錄配置

IT那活兒 / 4913人閱讀
PostgreSQL數據庫免密登錄配置

PG數據庫在登錄的時候,需要顯示輸入密碼,因此在很多維護操作中都不方便,比如:定時的VACUUM腳本、定時備份腳本等。PG不能像MySQL那樣可以在命令中直接輸入密碼。本文梳理了以下幾種PG配置免密的方法。


方法一:設置pg_hab.conf 認證方式為trust

示例:
#Type database user address method
host all postgres 127.0.0.1/32 trust

該方式最不安全,導致通過指定IP連接數據庫的連接都可以任意登錄數據,毫無安全保障。禁止在生產環境使用


方法二:設置PG環境變量PGPASSWORD

PGPASSWORD是PostgreSQL系統環境變量,在客戶端設置后再遠程連接數據庫時,將優先使用這個密碼。

示例:

[postgres@PG-1 ~]$ export PGPASSWORD=root
[postgres@PG-1 ~]$ psql -U postgres -h 127.0.0.1 -p 5432
Timing is on.
Border style is 2.
Null display is "NULL".
psql (13.2)
Type "help" for help.

此時數據庫登錄時,不在提示輸入用戶密碼


方法三:設置環境變量PGSERVICE

pg_service.conf 通過定義服務文件的方式,可以對多個數據庫進行免密登錄。

示例:

vi /home/postgres/.pg_service.conf
[backup]
hostaddr=127.0.0.1
port=5432
user=postgres
dbname=postgres
password=root
connect_timeout=10
[postgres@PG-1 ~]$ export PGSERVICE=backup
[postgres@PG-1 ~]$ psql -h 127.0.0.1 -p 5432 -U postgres
Timing is on.
Border style is 2.
Null display is "NULL".
psql (13.2)
Type "help" for help.

定義pg_service.conf文件,該文件可以包含多個模塊,每個模塊代表一個連接。


方法四:設置.pgpass文件

改文件默認在/home/postgres/,且該文件的權限要為600,如果文件權限不對,則在登錄會有相應的告警輸出,并要求輸入用戶密碼。

WARNING: password file "/home/postgres/.pgpass" has group or world access; permissions should be u=rw (0600) or less
Password for user postgres:


內容格式:
host:port:dbname:username:password
示例:
[postgres@PG-1 ~]$ cat .pgpass
127.0.0.1:5432:postgres:postgres:root
localhost:5432:postgres:postgres:root
文件權限:
[postgres@PG-1 ~]$ ll -h .pgpass
-rw------- 1 postgres postgres 76 2月 24 19:26 .pgpass
登錄:
[postgres@PG-1 ~]$ psql -U postgres -h 127.0.0.1 -p 5432
Timing is on.
Border style is 2.
Null display is "NULL".
psql (13.2)
Type "help" for help.


以上的幾種免密方式,在使用pg_basebackup進行備份時都可適用。以下是相關驗證:

1. 使用PGSERVICE環境變量

export PGSERVICE=backup
pg_basebackup -D /data/aa -Fp -X stream -R -P -c fast

2. 使用PGPASSWORD環境變量

export PGPASSWORD=password
pg_basebackup -D /data/bb -Fp -X stream -R -P -c fast -h 127.0.0.1 -p 5432 -U postgres

3. 使用.pgpass方式

vi /home/postgres/.pgpass
127.0.0.1:5432:postgres:postgres:root
chmod 600 .pgpass
pg_basebackup -D /data/bb -Fp -X stream -R -P -c fast -h 127.0.0.1 -p 5432 -U postgres

4. pg_basebackup備份使用-d參數,在連接字符串中配置連接信息

pg_basebackup   -D /data/pgdata/ -F p -R -X stream -c fast  -U replic -d host=192.168.28.169 port=5432 password=replic dbname=postgres


END


更多精彩干貨分享

點擊下方名片關注

IT那活兒

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/129860.html

相關文章

發表評論

0條評論

IT那活兒

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<