PostgreSQL進(jìn)行重置密碼的方法小結(jié)
一、前言
系統(tǒng):windows系統(tǒng) 64位
Postgresql 版本:Postgresql 14
今天想測(cè)試一個(gè)PostgresSQL語(yǔ)法的 SQL,但是打開PostgresSQL之后沉默了。密碼是什么?
想來(lái)當(dāng)初知識(shí)安裝隨便玩一下,也沒有太留意記一下密碼,結(jié)果日長(zhǎng)月久的,漸漸就忘記了,于是開始了尋找密碼的道路。一開始想著用pgAdmin重置,但似乎沒有這樣的按鈕。上網(wǎng)找一找,發(fā)現(xiàn)還是有辦法的,網(wǎng)友給力!
二、重置密碼過程
2.1 修改配置文件
由于版本有一些差異,找到的教程中,pg_dba.conf文件的配置和我的文件配置也有所不同。教程配置文件如下:
# TYPE DATABASE USER ADDRESS METHOD # IPv4 local connections: host all all 127.0.0.1/32 trust # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. host replication all 127.0.0.1/32 md5 host replication all ::1/128 md5
我的配置文件如下:
# TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all scram-sha-256 # IPv4 local connections: host all all 127.0.0.1/32 scram-sha-256 # IPv6 local connections: host all all ::1/128 scram-sha-256 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all scram-sha-256 host replication all 127.0.0.1/32 scram-sha-256 host replication all ::1/128 scram-sha-256
雖然配置文件不一樣,但是處理方式大同小異,就是把相關(guān)的驗(yàn)證方式改為trust,改完之后就是免密登錄的方式。
如果想了解具體是哪一個(gè)會(huì)生效,可以逐一測(cè)試,如果不想一個(gè)個(gè)測(cè)試,可以將全部都改為trust,后面修改完密碼之后再改回來(lái)就可以了,為了安全起見,記得要改回來(lái)哦!(可以考慮備份,改完后直接替換)
2.2 重啟windows服務(wù)
改完配置文件之后,可以使用調(diào)出服務(wù),重啟PostgreSQL Server服務(wù)。重啟服務(wù)有幾種方法:
方法一:用快捷鍵win+R,輸入services.msc,回車或確定,然后會(huì)彈出系統(tǒng)服務(wù)界面,找到PostgreSQL Server服務(wù),點(diǎn)擊重啟動(dòng)即可。

方法二:如果你知道你的PostgreSQL Server服務(wù)的名稱,也可以通過以下命令net關(guān)閉和打開服務(wù)
net stop <your PostgreSQL Server name> net start <your PostgreSQL Server name>
2.3 登錄并重置密碼
打開命令行,依次輸入以下命令。注意修改密碼的引號(hào)內(nèi)填入自己新的密碼。
psql -U postgres -- 登錄 ALTER USER postgres WITH PASSWORD '<your new password>'; -- 修改密碼

修改好了,后面我就可以通過123456登錄賬戶postgres了。
2.4 恢復(fù)配置文件
將剛剛修改的改回去。
將剛剛修改的改回去。
將剛剛修改的改回去。
另外,補(bǔ)充一點(diǎn),配置文件剛剛修改的內(nèi)容,其實(shí)都是登錄數(shù)據(jù)庫(kù)的方式。除了免密登錄的trust,常用的兩種就是:md5和scram-sha-256。
md5使用不太安全的質(zhì)詢-響應(yīng)機(jī)制,它可以防止密碼嗅探并避免以純文本形式將密碼存儲(chǔ)在服務(wù)器上,但如果攻擊者設(shè)法從服務(wù)器竊取密碼哈希,則無(wú)法提供任何保護(hù)。此外,MD5 散列算法現(xiàn)在不再被認(rèn)為可以抵御確定的攻擊。但是,md5是目前使用較廣泛的方法。
scram-sha-256也是一種質(zhì)詢-響應(yīng)方案,可防止在不受信任的連接上嗅探密碼,并支持以被認(rèn)為是安全的加密散列形式將密碼存儲(chǔ)在服務(wù)器上。scram-sha-256是當(dāng)前提供的方法中最安全的,但舊客戶端庫(kù)不支持它。
以上就是PostgreSQL進(jìn)行重置密碼的方法小結(jié)的詳細(xì)內(nèi)容,更多關(guān)于PostgreSQL重置密碼的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Postgresql 檢查數(shù)據(jù)庫(kù)主從復(fù)制進(jìn)度的操作
這篇文章主要介紹了Postgresql 檢查數(shù)據(jù)庫(kù)主從復(fù)制進(jìn)度的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2020-12-12
postgresql 將逗號(hào)分隔的字符串轉(zhuǎn)為多行的實(shí)例
這篇文章主要介紹了postgresql 將逗號(hào)分隔的字符串轉(zhuǎn)為多行的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2021-02-02
PostgreSQL實(shí)現(xiàn)一個(gè)通用標(biāo)簽系統(tǒng)
這篇文章主要給大家介紹了關(guān)于利用PostgreSQL實(shí)現(xiàn)一個(gè)通用標(biāo)簽系統(tǒng)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01
Postgresql中json和jsonb類型區(qū)別解析
在我們的業(yè)務(wù)開發(fā)中,可能會(huì)因?yàn)樘厥狻練v史,偷懶,防止表連接】經(jīng)常會(huì)有JSON或者JSONArray類的數(shù)據(jù)存儲(chǔ)到某列中,這個(gè)時(shí)候再PG數(shù)據(jù)庫(kù)中有兩種數(shù)據(jù)格式可以直接一對(duì)多或者一對(duì)一的映射對(duì)象,接下來(lái)通過本文介紹Postgresql中json和jsonb類型區(qū)別,需要的朋友可以參考下2024-06-06
常用?PostgreSQL?預(yù)防數(shù)據(jù)丟失解決方案
這篇文章主要介紹了常用?PostgreSQL?預(yù)防數(shù)據(jù)丟失方案,本篇主要介紹關(guān)于?DDL?和?DML?操作,如何預(yù)防數(shù)據(jù)丟失的方案,需要的朋友可以參考下2022-01-01

