基于PostgreSQL密碼重置操作
今天我在用命令行登陸postgresql的時(shí)候,忽然忘記密碼了,重試了N次還是不行,然后我就試著上網(wǎng)找解決之道,最后完美的解決了,可是后來我才發(fā)現(xiàn)還有個(gè)更簡單的方法,該篇博客用來記錄自己沙雕行為。
工具已登陸
這個(gè)就是最簡單的方法,你有工具登陸過,完全可以通過工具來修改(可是我當(dāng)時(shí)完全沒想到這個(gè)。。。),我是通過Navicat來連接的,可以直接通過Navicat來修改步驟如下:
1、連接數(shù)據(jù)庫
2、點(diǎn)擊角色
3、選擇角色
4、填入新密碼
5、保存之后,關(guān)閉連接,編輯連接就OK了。
工具未登錄
Windows
1、找到Postgresql安裝目錄下的data,打開文件夾,找到pg_hba.conf
ps:如果大家找不到,那我推薦一個(gè)文件搜索神器:Listary,大家可以去試試,賊好用
2.用記事本格式打開,拉到最下面,找到所有md5,全都改為trust
3.重啟數(shù)據(jù)庫,然后連接數(shù)據(jù)庫,不輸入密碼,直接點(diǎn)連接,此時(shí)連接成功
ps:在windows的控制面板中,找到管理工具,然后找到服務(wù):postgresql,點(diǎn)擊右鍵 ,重啟就行了。
4.修改密碼
在客戶端修改
alter user postgres with password 'YOUR PASSWORD'
5.或者重新打開pgAdmin(即數(shù)據(jù)庫),連接服務(wù)器,不輸入密碼,直接點(diǎn)連接,此時(shí)連接成功
6.修改密碼,右鍵登陸角色中要修改密碼的賬戶,打開屬性,點(diǎn)擊定義,輸入密碼,然后確定,此時(shí)修改密碼成功。如果重新打開定義會(huì)發(fā)現(xiàn)密碼欄里依舊空白,但此時(shí)密碼已是新密碼。
7,最后將第一二步中的trust改回md5。重新啟動(dòng)數(shù)據(jù)庫,輸入密碼,成功連接服務(wù)器。
Linux
如果是Linux下的話:
1、找到pg_hba.conf路徑
運(yùn)行
ps ax | grep postgres | grep -v postgres:
得到:
25653 pts/0 S+ 0:00 /usr/lib/postgresql/9.3/bin/psql -h 192.168.10.10 -p 5432 -U postgres -W 26679 ? S 0:00 /usr/lib/postgresql/9.3/bin/postgres -D /var/lib/postgresql/9.3/main -c config_file=/etc/postgresql/9.3/main/postgresql.conf 26924 pts/7 R+ 0:00 grep --color=auto postgres
注意結(jié)果中有一個(gè)config_file,而config_file=/etc/postgresql/9.3/main/就是我們配置所在地
2、無密碼postgres登錄
修改pg_hba.confg
#原來是 host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 #改成 host all all 127.0.0.1/32 trust # IPv6 local connections: host all all ::1/128 md5
ps:如果你重啟之后還是登陸不了,也可以將全部md5修改為trust
重啟postgresql服務(wù)
sudo service postgresql restart
登錄
psql -h 127.0.0.1 -U postgres
3、登錄修改密碼
修改密碼
alter user postgres with password 'YOUR PASSWORD'
最后將pg_hba修改回去就好啦,也就是將所有的trust還原為md5。
補(bǔ)充:centos 8 docker安裝postgresql修改密碼,遠(yuǎn)程訪問設(shè)置
一,修改密碼
1,進(jìn)入容器
docker exec -it 834f03380346 bash
2,修改密碼
二,遠(yuǎn)程訪問設(shè)置
1,修改配置文件
1)、修改pg_hba.conf文件
配置用戶的訪問權(quán)限(#開頭的行是注釋內(nèi)容):
# TYPE DATABASE USER CIDR-ADDRESS METHOD # "local" is for Unix domain socket connections only local all all trust # IPv4 local connections: host all all 127.0.0.1/32 trust host all all 0.0.0.1/0 md5 # IPv6 local connections: host all all ::1/128 trust
2)、修改postgresql.conf文件,將數(shù)據(jù)庫服務(wù)器的監(jiān)聽模式修改為監(jiān)聽所有主機(jī)發(fā)出的連接請求。
定位到#listen_addresses = 'localhost'。PostgreSQL安裝完成后,默認(rèn)只接受來自本機(jī)localhost的連接請求。
將行開頭都#去掉,將行內(nèi)容修改為listen_addresses = '*'來允許數(shù)據(jù)庫服務(wù)器監(jiān)聽來自任何主機(jī)的連接請求!
2,修改入站規(guī)則
1),firewall-cmd --zone=public --add-port=5432/tcp --permanent
2),firewall-cmd --reload
3,關(guān)閉防火墻
systemctl stop firewalld.service
4,重啟docker
systemctl restart docker.service
5,開啟防火墻
systemctl start firewalld.service
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
PostgreSQL數(shù)據(jù)庫遷移部署實(shí)戰(zhàn)教程
這篇文章主要介紹了PostgreSQL數(shù)據(jù)庫遷移部署實(shí)戰(zhàn)教程,由于項(xiàng)目本身就是基于PostgreSQL數(shù)據(jù)庫構(gòu)建的,因此數(shù)據(jù)庫遷移將變得十分便捷,接下來,我將簡要介紹我們的遷移步驟,需要的朋友可以參考下2023-07-07PostgreSQL?流復(fù)制配置環(huán)境搭建過程
PostgreSQL 流復(fù)制是 9.0 提供的一種新的 WAL 傳遞方法,使用流復(fù)制時(shí),每當(dāng) Primary 節(jié)點(diǎn) WAL 產(chǎn)生,就會(huì)馬上傳遞到 Standby 節(jié)點(diǎn),流復(fù)制提供異步和同步兩種模式,同步模式可以保障數(shù)據(jù) 0 丟失,這篇文章主要介紹了PostgreSQL?流復(fù)制搭建,需要的朋友可以參考下2023-09-09postgreSQL數(shù)據(jù)庫 實(shí)現(xiàn)向表中快速插入1000000條數(shù)據(jù)
這篇文章主要介紹了postgreSQL數(shù)據(jù)庫 實(shí)現(xiàn)向表中快速插入1000000條數(shù)據(jù),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12關(guān)于PostgreSQL截取某個(gè)字段中的部分內(nèi)容進(jìn)行排序的問題
這篇文章主要介紹了PostgreSQL截取某個(gè)字段中的部分內(nèi)容進(jìn)行排序,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06PostgreSQL 實(shí)現(xiàn)將多行合并轉(zhuǎn)為列
這篇文章主要介紹了PostgreSQL 實(shí)現(xiàn)將多行合并轉(zhuǎn)為列的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12postgresql查詢今天、昨天、本周、本月、上月、今年、去年的時(shí)間以及計(jì)算時(shí)間之差
PostgreSQL提供了許多返回當(dāng)前日期和時(shí)間的函數(shù),下面這篇文章主要給大家介紹了關(guān)于postgresql查詢今天、昨天、本周、本月、上月、今年、去年的時(shí)間以及計(jì)算時(shí)間之差的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-08-08PostgreSQL?pg_filenode.map文件介紹
這篇文章主要介紹了PostgreSQL誤刪pg_filenode.map怎么辦,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2022-09-09