溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

CDSW數(shù)據(jù)庫登錄報錯psql: FATAL: role "postgres" does not exist怎么解決

發(fā)布時間:2021-09-04 10:46:02 來源:億速云 閱讀:576 作者:chen 欄目:大數(shù)據(jù)

這篇文章主要講解了“CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決”吧!

問題現(xiàn)象    


  • 測試環(huán)境

1.Redhat7.4

2.CDH6.2.0

3.CDSW1.5.0


報錯信息“psql: FATAL:  role "postgres" does not exist”


CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決


異常分析      


通過上述異常分析,F(xiàn)ayson猜測可能是由于CDSW升級后考慮到PG數(shù)據(jù)庫的安全問題,從而將postgres用戶的role刪除了。像前面通過訪問后臺數(shù)據(jù)庫查看CDSW用戶審計日志一樣就屬于非法操作,可能就是為了防止Fayson這種不合常規(guī)的操作。


既然不能夠通過切換到postgres用戶直接登錄PG數(shù)據(jù)庫,那Fayson就通過賬號密碼的方式訪問CDSW的數(shù)據(jù)庫。通過分析發(fā)現(xiàn)CDSW的服務(wù)是由多個docker容器提供的服務(wù)組成(這里表達(dá)可能不夠?qū)I(yè)),F(xiàn)ayson找到提供Web訪問界面的docker容器,Web界面顯示的大部分信息都存儲在數(shù)據(jù),那同樣可以通過在Web服務(wù)中找到訪問CDSW數(shù)據(jù)庫的方法(即賬號和密碼等信息)。


問題解決      


1.通過如下docker命令找到正在運行的Web容器


[root@cdsw postgres-data]# docker ps |grep web   
 


CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決


如上截圖顯示有3個Web容器運行,主要是高可用的模式,所以我們會看到有三個Docker容器運行。


2.使用如下命令進(jìn)入Web容器


[root@cdsw postgres-data]# docker exec -i -t c972bbc1b3bc /bin/bash
 


CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決


3.在Web的容器中的環(huán)境變量中找到了訪問CDSW數(shù)據(jù)庫的賬號密碼等信息


cdsw@web-bd545c85b-n4488:/app/web$ echo $POSTGRESQL_USER
cdsw@web-bd545c85b-n4488:/app/web$ echo $POSTGRESQL_PASS
cdsw@web-bd545c85b-n4488:/app/web$ echo $POSTGRESQL_DB
cdsw@web-bd545c85b-n4488:/app/web$ echo $DB_IP
 


CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決


4.在當(dāng)前容器中使用psql客戶端遠(yuǎn)程訪問CDSW數(shù)據(jù)


cdsw@web-bd545c85b-n4488:/app/web$ /usr/lib/postgresql/9.4/bin/psql -U sense -W -h 100.77.0.128
 


CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決


如上圖顯示,我們又成功的訪問到CDSW數(shù)據(jù)庫了。



感謝各位的閱讀,以上就是“CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對CDSW數(shù)據(jù)庫登錄報錯psql: FATAL:  role "postgres" does not exist怎么解決這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI