PostgreSQL遠(yuǎn)程連接配置的實(shí)現(xiàn)
本文是在Windows上使用Navicat遠(yuǎn)程連接PostgreSQL,包括有密碼遠(yuǎn)程連接以及無密碼遠(yuǎn)程連接。
修改PostgreSQL監(jiān)聽地址
默認(rèn)PostgreSQL監(jiān)聽的地址是127.0.0.1,別的機(jī)器無法遠(yuǎn)程連接上,所以需要調(diào)整。
# 編譯安裝的PostgreSQL一般是在數(shù)據(jù)存儲(chǔ)目錄 # 不管是哪種安裝方式要是找不到的話可以使用find命令搜索一下 find / -name 'postgresql.conf' # 修改postgresql.conf文件 # 大約在60行左右 # 有可能是注釋的,如果注釋了要取消注釋 [root@bogon ~]# grep 'listen_addresses' /usr/local/pgsql/data/postgresql.conf listen_addresses = '*' # what IP address(es) to listen on;
重啟服務(wù)
[root@bogon ~]# su - postgres -c "pg_ctl -D /usr/local/pgsql/data/ restart" waiting for server to shut down.... done server stopped waiting for server to start....2024-05-17 03:24:12.197 EDT [10798] LOG: starting PostgreSQL 16.3 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), 64-bit 2024-05-17 03:24:12.197 EDT [10798] LOG: listening on IPv4 address "0.0.0.0", port 5432 2024-05-17 03:24:12.197 EDT [10798] LOG: listening on IPv6 address "::", port 5432 2024-05-17 03:24:12.198 EDT [10798] LOG: listening on Unix socket "/tmp/.s.PGSQL.5432" 2024-05-17 03:24:12.201 EDT [10801] LOG: database system was shut down at 2024-05-17 03:24:12 EDT 2024-05-17 03:24:12.204 EDT [10798] LOG: database system is ready to accept connections done server started # 查看端口監(jiān)聽情況 [root@bogon ~]# ss -nlpt | grep 5432 LISTEN 0 128 *:5432 *:* users:(("postgres",pid=10798,fd=6)) LISTEN 0 128 [::]:5432 [::]:* users:(("postgres",pid=10798,fd=7))
配置訪問權(quán)限
默認(rèn)是只能本地訪問PostgreSQL的,我們需要在pg_hba.conf里面配置
# 我的是在數(shù)據(jù)存儲(chǔ)目錄下,如果你的不知道的話可以使用find搜索一下 [root@bogon ~]# find / -name 'pg_hba.conf' /usr/local/pgsql/data/pg_hba.conf
請(qǐng)注意,使用 trust 認(rèn)證方法允許任何 IP 地址連接到你的數(shù)據(jù)庫,而不需要任何認(rèn)證,這是非常不安全的。這通常只在開發(fā)或測(cè)試環(huán)境中使用,并且應(yīng)該始終確保數(shù)據(jù)庫服務(wù)器不暴露在不受信任的網(wǎng)絡(luò)中。在生產(chǎn)環(huán)境中,你應(yīng)該使用更安全的認(rèn)證方法,如 md5 或 password(對(duì)于較新版本的 PostgreSQL,建議使用 scram-sha-256)。
# 找到IPv4 local connections這一行,在這一行下面添加 # 注意這樣是不安全的,因?yàn)樗械刂范伎梢詿o密碼遠(yuǎn)程連接我們的數(shù)據(jù)庫了 # host:這指定了連接類型。host 表示該規(guī)則適用于通過 TCP/IP 進(jìn)行的遠(yuǎn)程連接。如果是本地連接,通常會(huì)使用 local。 # all:這定義了哪些數(shù)據(jù)庫可以接受這個(gè)規(guī)則。all 表示這個(gè)規(guī)則適用于所有數(shù)據(jù)庫。你也可以指定特定的數(shù)據(jù)庫名,例如 mydatabase。 # all:這定義了哪些用戶可以接受這個(gè)規(guī)則。all 表示這個(gè)規(guī)則適用于所有用戶。你也可以指定特定的用戶名,例如 myuser。 # 0.0.0.0/0:這定義了哪些客戶端 IP 地址或 IP 地址范圍可以接受這個(gè)規(guī)則。0.0.0.0/0 是一個(gè)特殊的 CIDR 表示法,它表示任何 IP 地址(即沒有 IP 地址限制)。你也可以指定具體的 IP 地址,如 192.168.1.100,或者 IP 地址范圍,如 192.168.1.0/24。 # trust:這定義了認(rèn)證方法。trust 表示不需要密碼或其他任何形式的認(rèn)證,客戶端可以直接連接。這通常只在本地或受信任的網(wǎng)絡(luò)環(huán)境中使用,因?yàn)樗试S任何人無需認(rèn)證即可訪問數(shù)據(jù)庫。 host all all 0.0.0.0/0 trust
請(qǐng)注意,如果選擇了md5 或 password之類的需要有密碼才行,配置PostgreSQL密碼流程如下
# 切換用戶 [root@bogon ~]# su - postgres Last login: Fri May 17 03:40:32 EDT 2024 on pts/1 # 登錄數(shù)據(jù)庫 [postgres@bogon ~]$ psql psql (16.3) Type "help" for help. # 修改密碼,我這里密碼設(shè)置為123456 postgres=# ALTER USER postgres WITH PASSWORD '123456'; ALTER ROLE postgres=# \q
重啟服務(wù)
[root@bogon ~]# su - postgres -c "pg_ctl -D /usr/local/pgsql/data/ restart" waiting for server to shut down....2024-05-17 03:31:44.721 EDT [10798] LOG: received fast shutdown request 2024-05-17 03:31:44.722 EDT [10798] LOG: aborting any active transactions 2024-05-17 03:31:44.723 EDT [10798] LOG: background worker "logical replication launcher" (PID 10804) exited with exit code 1 2024-05-17 03:31:44.723 EDT [10799] LOG: shutting down 2024-05-17 03:31:44.725 EDT [10799] LOG: checkpoint starting: shutdown immediate 2024-05-17 03:31:44.727 EDT [10799] LOG: checkpoint complete: wrote 0 buffers (0.0%); 0 WAL file(s) added, 0 removed, 0 recycled; write=0.001 s, sync=0.001 s, total=0.004 s; sync files=0, longest=0.000 s, average=0.000 s; distance=0 kB, estimate=0 kB; lsn=0/15698B0, redo lsn=0/15698B0 2024-05-17 03:31:44.730 EDT [10798] LOG: database system is shut down done server stopped waiting for server to start....2024-05-17 03:31:44.842 EDT [11215] LOG: starting PostgreSQL 16.3 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), 64-bit 2024-05-17 03:31:44.842 EDT [11215] LOG: listening on IPv4 address "0.0.0.0", port 5432 2024-05-17 03:31:44.842 EDT [11215] LOG: listening on IPv6 address "::", port 5432 2024-05-17 03:31:44.843 EDT [11215] LOG: listening on Unix socket "/tmp/.s.PGSQL.5432" 2024-05-17 03:31:44.846 EDT [11218] LOG: database system was shut down at 2024-05-17 03:31:44 EDT 2024-05-17 03:31:44.851 EDT [11215] LOG: database system is ready to accept connections done server started
使用Navicat連接
修改一下IP地址即可,修改為PostgreSQL的地址,不用輸入密碼,因?yàn)槲覀冊(cè)O(shè)置的是無密碼
如果設(shè)置的有密碼那就填寫對(duì)應(yīng)的密碼即可
點(diǎn)擊 測(cè)試連接 如果顯示 連接成功,就可以點(diǎn)擊確定了
雙擊打開數(shù)據(jù)庫
到此這篇關(guān)于PostgreSQL遠(yuǎn)程連接配置的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)PostgreSQL遠(yuǎn)程連接配置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PostgreSQL已經(jīng)存在的表怎么設(shè)置id自增長(zhǎng)詳解
這篇文章主要介紹了如何為已有的PostgreSQL表設(shè)置ID字段為自增,包括創(chuàng)建序列、設(shè)置默認(rèn)值、可能的表結(jié)構(gòu)修改以及重置序列的步驟,需要的朋友可以參考下2025-03-03詳解PostgreSQL?14.4安裝使用及一些安裝的異常問題
這篇文章主要介紹了PostgreSQL?14.4的安裝以及使用以及一些安裝的異常,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07CentOS 7下安裝PostgreSQL 9.6的教程分享
PostgreSQL在我心目中的地位要遠(yuǎn)遠(yuǎn)高于MySQL,雖然流行對(duì)比MySQL低很對(duì),但是功能性一致走在MySQL的前面。下面這篇文章主要介紹了CentOS 7下安裝PostgreSQL數(shù)據(jù)庫的方法,需要的朋友可以參考借鑒,一起來看看吧。2017-02-02PostgreSQL利用遞歸優(yōu)化求稀疏列唯一值的方法
這篇文章主要介紹了PostgreSQL利用遞歸優(yōu)化求稀疏列唯一值的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01postgresql 計(jì)算兩點(diǎn)距離的2種方法小結(jié)
這篇文章主要介紹了postgresql 計(jì)算兩點(diǎn)距離的2種方法小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01PostgreSQL實(shí)現(xiàn)按年、月、日、周、時(shí)、分、秒的分組統(tǒng)計(jì)
這篇文章介紹了PostgreSQL實(shí)現(xiàn)按年、月、日、周、時(shí)、分、秒分組統(tǒng)計(jì)的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06淺談PostgreSQL的客戶端認(rèn)證pg_hba.conf
這篇文章主要介紹了淺談PostgreSQL的客戶端認(rèn)證pg_hba.conf,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01PostgreSQL中查看當(dāng)前時(shí)間和日期的幾種常用方法
在 PostgreSQL 中,有多個(gè)函數(shù)可以用來查看當(dāng)前時(shí)間和日期,這些函數(shù)在處理時(shí)間戳、日期和時(shí)間的計(jì)算時(shí)非常有用,以下是幾種常用的查看當(dāng)前時(shí)間和日期的函數(shù)及示例,需要的朋友可以參考下2024-10-10