linux離線安裝postgresql


說明

需要在內網的服務器上搭建sonarqube服務,發現最新的sonarqube 8.3版本居然只支持三個數據庫了:Oracle、SQL Server和Postgresql。

沒有之前習慣使用的Mysql了,三選一,相對來說Postgresql最輕量且免費,就選它了。

由於對Postgresql不怎么熟,又是離線安裝,作一下安裝記錄筆記。

下載

下載地址:https://www.postgresql.org/download/

圖片說明

有不同操作系統對應的版本,這里選擇自己使用的Red Hat系列。

之后選擇對應的數據庫版本和操作系統版本,說明文檔上在線通過yum安裝,往下拉。

圖片說明

在Direct RPM download一節會有安裝包的下載地址。

圖片說明

點進去,這里我們選擇穩定的12及對應操作系統為RHEL 7的版本,

最終應該有以下幾個包,分別進行下載:

圖片說明

安裝

直接進行安裝,這里我沒有安裝 postgresql12-contrib。

rpm -ivh postgresql12-libs-12.2-2PGDG.rhel7.x86_64.rpm rpm -ivh postgresql12-12.2-2PGDG.rhel7.x86_64.rpm rpm -ivh postgresql12-server-12.2-2PGDG.rhel7.x86_64.rpm

安裝很順利,沒有任何依賴和錯誤需要解決。

初始化

/usr/pgsql-12/bin/postgresql-12-setup initdb

啟動服務

systemctl enable postgresql-12 systemctl start postgresql-12

配置IP和端口

vi /var/lib/pgsql/12/data/postgresql.conf

按需修改以下兩行:

# *表示監聽所有的ip信息,也可以使用localhost、127.0.0.1等 listen_addresses = '*' # 默認的監聽端口為5432,也可以換為其它的 port = 5432

修改同目錄下的pg_hba.conf文件,設置允許訪問的ip,這里我因為是測試服務器,所以設置所有:

host all all 0.0.0.0/0 md5

重啟:

systemctl restart postgresql-12

這期間可以用以curl命令測試服務是否正常,可以在其它機器指定ip訪問測試遠程訪問是否以開放,顯示以下類似信息表示正常:

curl 127.0.0.1:5433 curl: (52) Empty reply from server

默認用戶與密碼方式登錄

經過上面配置已經可以遠程使用用戶名、密碼方式登錄postgresql,但是本機反而不能使用(本機依然命令行免密方式),導致如果應用在同一台機器使用jdbc連接將失敗,搭建sonarqube服務過程中就踩了這個坑。

因此修改postgresql自帶超級用戶postgres的密碼方便后續使用。

切換到postgres用戶,並進入psql命令行,如果修改了端口,需要帶上端口號:

su - postgres psql -p 5433

修改密碼:

alter user postgres with password postgres’;

依然修改_hba.conf文件,使本機也使用密碼方式:

#load all all    peer local all all   md5 #host all all 127.0.0.1/32 ident host all all 127.0.0.1/32 md5

創建sonar用戶

進入psql命令行,如果已修改為密碼方式,需要輸入密碼:

su - postgres psql -p 5433

創建用戶

create user sonar with password 'sonar';

創建數據庫

創建sonar數據庫:

create database sonar;

將sonar數據庫授權給前面創建的sonar用戶:

grant all privileges on database sonar to sonar;

至此,可以在sonarqube中配置此postgresql的jdbc信息進行使用了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM