Linux

PostgreSQL 更改使用者帳號的密碼教學

本篇介紹如何在 psql 中使用指令更改 PostgreSQL 使用者帳號的密碼。

更改 PostgreSQL 密碼

若要更改 PostgreSQL 使用者帳號的密碼,最標準的作法就是先使用 psql 連線至 PostgreSQL 伺服器:

# 使用 psql 連線至 PostgreSQL 伺服器
psql

接著再使用 \password 這個 meta 指令來更改自己的密碼。

-- 更改自己的密碼
\password

如果要變更其他使用者的密碼,則要使用 PostgreSQL 管理者的帳號登入:

# 以 PostgreSQL 管理者登入
sudo -u postgres psql

再用 \password 變更指定帳號的密碼:

-- 更改 gtwang 的密碼
\password gtwang

另外一種修改密碼的方式是使用 ALTER USER 這個 SQL 指令:

-- 更改 gtwang 的密碼
ALTER USER gtwang WITH PASSWORD 'new_password';

不過這種方式會讓未加密的密碼儲存於 ~/.psql_history 這個歷史紀錄檔中,所以若用這種方式的話,建議事後要把該紀錄檔刪除。

# 刪除 psql 歷史紀錄檔
rm ~/.psql_history

認證方式

PostgreSQL 對於本機的使用者預設會使用 peer 的方式來認證,也就是說如果透過 Unix-domain socket 連到 PostgreSQL 資料庫,是不需要使用到密碼的,只有使用 TCP/IP socket 連線的時候,才會使用密碼認證。

如果想要更改認證的方式,可以參考 PostgreSQL 的官方文件,修改 pg_hba.conf 這個設定檔。

參考資料:StackOverflow

G. T. Wang

個人使用 Linux 經驗長達十餘年,樂於分享各種自由軟體技術與實作文章。

Share
Published by
G. T. Wang
標籤: 指令

Recent Posts

光陽 KYMCO GP 125 機車接電發動、更換電瓶記錄

本篇記錄我的光陽 KYMCO ...

1 年 ago

[開箱] YubiKey 5C NFC 實體金鑰

本篇是 YubiKey 5C ...

2 年 ago

[DIY] 自製竹火把

本篇記錄我拿竹子加上過期的苦茶...

2 年 ago