国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > 詳解PostgreSQL默認(rèn)密碼

詳解PostgreSQL默認(rèn)密碼

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-24 23:12:57 1700838777

一、pgsql默認(rèn)密碼

PostgreSQL是一種強大的開源關(guān)系型數(shù)據(jù)庫管理系統(tǒng),但是在安裝時,默認(rèn)密碼設(shè)置為“postgres”,這也是許多人采用的密碼,這給數(shù)據(jù)庫安全帶來了隱患。因此,在安裝PostgreSQL之后,最好更改初始密碼,以提高數(shù)據(jù)庫的安全性。

下面是一個更改初始密碼的示例代碼:


# 進入PostgreSQL Shell(psql)
> sudo -u postgres psql

# 更改密碼
postgres=# ALTER USER postgres WITH PASSWORD 'new_password';

二、postgresql默認(rèn)排序

在PostgreSQL中,每個查詢都可以通過相應(yīng)的ORDER BY子句進行排序。 如果沒有提供ORDER BY子句,則結(jié)果集的順序是不可預(yù)測的。 在PostgreSQL中,通常使用UNION和INTERSECT等多種操作符時需要指定ORDER BY子句以獲得正確的結(jié)果。

下面是一個用于按id升序排列表的示例代碼:


SELECT * FROM table_name ORDER BY id ASC;

三、postgresql更改密碼

更改PostgreSQL用戶密碼的方法已經(jīng)在第一部分中介紹過,可以使用ALTER USER語句更改任何用戶的密碼。 但是,某些情況下,用戶可能忘記了他們的密碼或無法使用超級用戶(如postgres)更改密碼。 在這種情況下,您可以使用以下步驟更改postgres用戶的密碼:

1. 停止PostgreSQL服務(wù)器;


# 停止PostgreSQL服務(wù)
> sudo systemctl stop postgresql

2. 編輯pg_hba.conf文件,允許本地訪問


$ sudo vim /var/lib/pgsql/data/pg_hba.conf

在文件的最后添加以下內(nèi)容:


#添加如下內(nèi)容即可:
host    all     all     127.0.0.1/32    md5

3. 以身份驗證的方式啟動PostgreSQL;


# 以身份驗證的方式啟動PostgreSQL
> sudo PGSETUP_INITDB_OPTIONS="--auth-host=md5" /usr/pgsql-13/bin/pg_ctl start -D /var/lib/pgsql/13/data -l logfile

4. 使用以下命令更改postgres用戶的密碼。


> psql -U postgres
> \password postgres

輸入新密碼并按Enter鍵,之后要求再次輸入新密碼以確認(rèn)。 登錄的密碼現(xiàn)在已更改為您輸入的新密碼。

四、設(shè)置PostgreSQL數(shù)據(jù)庫密碼

以下示例方法演示如何設(shè)置postgresql數(shù)據(jù)庫密碼和超級用戶postgres的密碼。

1. 重新啟動PostgreSQL,并使用以下命令更改postgres用戶的密碼。


> sudo systemctl restart postgresql
> sudo -u postgres psql
> ALTER USER postgres with encrypted password 'your-password';

2. 修改pg_hba.conf以允許遠程連接;


> sudo vim /var/lib/pgsql/13/data/pg_hba.conf

在文件最后添加以下內(nèi)容:


# 添加如下內(nèi)容:
host    all       all      0.0.0.0/0         md5

3. 修改postgresql.conf文件以允許遠程連接


> sudo vim /var/lib/pgsql/13/data/postgresql.conf

找到聽連接字符串,其可如以下所示:


#監(jiān)聽地址
listen_addresses = 'localhost'    

修改為以下內(nèi)容


listen_addresses = '*'

4. 重啟PostgreSQL。


> sudo systemctl restart postgresql

五、postgresql忘記密碼

如果您忘記了postgres用戶的密碼,那我們可以通過以下步驟重置。

1. 編輯pg_hba.conf文件,允許本地訪問


$ sudo vim /var/lib/pgsql/data/pg_hba.conf

在文件的最后添加以下內(nèi)容:


host    all     all     127.0.0.1/32    trust

2. 停止PostgreSQL服務(wù)器


> sudo systemctl stop postgresql

3. 以不需要密碼的方式啟動PostgreSQL


> sudo systemctl start postgresql
> sudo -i -u postgres
$ psql

4. 使用以下命令更改postgres用戶的密碼。


ALTER USER postgres with encrypted password 'your-password';

5. 修改pg_hba.conf以禁用無密碼訪問


$ sudo vim /var/lib/pgsql/data/pg_hba.conf

將文件中所有的


local   all             all                                     trust
host    all             all             127.0.0.1/32            trust

替換為如下所示:


local   all             all                                     md5
host    all             all             127.0.0.1/32            md5

6. 重新啟動PostgreSQL


> sudo systemctl restart postgresql

六、postgresql源碼加密

PostgreSQL支持?jǐn)?shù)據(jù)和傳輸功能的加密。 在某些情況下,如包含敏感數(shù)據(jù)的生產(chǎn)環(huán)境中,使用加密功能可以確保數(shù)據(jù)不會被未經(jīng)授權(quán)的人訪問。

以下示例代碼展示如何啟用PostgreSQL SSL:


# 修改postgresql.conf文件以啟用SSL
listen_addresses = 'localhost' 
ssl = on
ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL'   
ssl_ca_file = '/etc/ssl/certs/ca-certificates.crt' 
ssl_cert_file = '/etc/ssl/certs/ssl-cert-snakeoil.pem' 
ssl_key_file = '/etc/ssl/private/ssl-cert-snakeoil.key'

# 重啟PostgreSQL服務(wù)器
sudo systemctl restart postgresql

七、查看postgresql用戶密碼

如果您想查看PostgreSQL用戶的密碼,可以在PostgreSQL Shell中使用以下命令:


SELECT usename, passwd FROM pg_shadow;

除此之外,您還可以使用以下命令查看指定用戶的密碼:


SELECT passwd FROM pg_shadow WHERE usename='username';

結(jié)語:

PostgreSQL是一種強大的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),本文從多個角度詳細(xì)介紹了postgresql默認(rèn)密碼的設(shè)置、更改和重置以及PostgreSQL的加密功能等內(nèi)容。希望本文可以對您有所幫助!

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT