安裝包下載地址:
在官網下載postgresql-12.1.tar.gz:
https://www.postgresql.org/ftp/source/


設置保存安裝包的目錄
將文件上傳到linux指定目錄下,進入linux系統,輸入指令跳轉到指定目錄下例如:
cd /app/software/
跳轉到指定目錄以后輸入指令解壓目錄中的安裝包
tar -zxvf postgresql-14.0.tar.gz -C ../
進入解壓后的目錄
cd /app/postgresql-14.0
檢查依賴包.
yum install -y bison yum install -y flex yum install -y readline-devel yum install -y zlib-devel
配置選項生成Makefile,默認安裝到目錄:/app/postgresql-14.0
./configure --prefix=/app/postgresql-14.0
編譯並安裝
make make install
創建,添加postgres 用戶到 postgres組
groupadd postgres #添加linux組postgres useradd -g postgres postgres #添加linux用戶postgres chown -R postgres:postgres /app #將/app目錄(包括子目錄)權限賦給用戶postgres和組postgres mkdir -p /app/postgresql-14.0/data #在目錄/app/postgresql-14.0下創建目錄/data su postgres #切換用戶postgres
初始化數據庫
cd /app/postgresql-14.0/bin/ #切換到/app/postgresql-14.0/bin/目錄 ./initdb -D /app/postgresql-14.0/data/
嘗試啟動數據庫
/app/postgresql-14.0/bin/pg_ctl -D /app/postgresql-14.0/data/ -l logfile start --啟動數據庫 /app/postgresql-14.0/bin/pg_ctl -D /app/postgresql-14.0/data/ stop --停止數據庫 /app/postgresql-14.0/bin/pg_ctl restart -D /app/postgresql-14.0/data/ -m fast --重啟數據庫
確定可以正常開啟關閉服務以后停止服務,往下配置數據庫服
修改postgresql.conf,修改主要的配置參數。
cd /app/postgresql-14.0/data/ cp postgresql.conf postgresql.conf_bak #備份 vim /usr/local/pgsql/data/postgresql.conf
修改 listen_addresses = '192.168.0.1' 前面的#號需要去掉。
默認參數是‘localhost‘ ,一般會改成實際Ip地址。
修改成*表示所有任意客戶端即可連接,
listen_addresses = '*'

修改pg_hba.conf,修改數據庫的訪問權限。
vim /app/postgresql-14.0/data/pg_hba.conf
添加以下,表示主機所有IP都可以訪問。
host all all 0.0.0.0/0 trust
如截圖:

添加環境變量
切換root賬號(建議直接開啟兩個shell界面操作)
su root cd /home/postgres vim .bash_profile
添加變量:
export PGHOME=/app/postgresql-14.0 export PGDATA=/app/postgresql-14.0/data PATH=$PATH:$HOME/bin:$PGHOME/bin
如圖所示

添加完成以后退出
退出指令為: 先按Esc鍵 然后輸入:wq 敲擊回車 保存並退出成功
保存完文件以后,執行下面指令(不執行環境變量不會生效)
source .bash_profile
設置開機自啟動
cd /app/postgresql-14.0/contrib/start-scripts ll
檢查linux文件夾是否是可操作文件,這里我已經是可操作文件,所以不用管

如果不是可執行權限的話先賦予權限
chmod a+x linux
可linux文件可以操作以后執行下面指令:
cp linux /etc/init.d/postgresql #(復制linux文件到/etc/init.d目錄下,並更名postgresql) vim linux /etc/init.d/postgresql
安裝程序的文件路徑
prefix=/app/postgresql-14.0
數據存放目錄
PGDATA="/app/postgresql-14.0/data"

如果和自己的路徑一致就不需要修改了,按ESC鍵 ,然后:q退出編輯。
chkconfig --add postgresql (添加開機啟動項目) chkconfig (看下是否設置成功)

設置系統配置,開放默認的5432端口
查看當前firewall防火牆版本指令: firewall-cmd --version 安裝: yum install firewalld 啟動: systemctl start firewalld 查看狀態: systemctl status firewalld 停止運行: systemctl stop firewalld
先使用查看端口指令查看是否有firewall防火牆
firewall-cmd --zone=public --list-ports (查看所有打開的端口) firewall-cmd --zone=public --add-port=5432/tcp --permanent (添加5432端口) firewall-cmd --reload (重啟防火牆)
啟動服務
cd /app/postgresql-14.0/data/ #一定要到這個目錄下不然無法啟動成功 service postgresql start #開啟服務 service postgresql stop #關閉服務

查看PostgreSQL服務
ps -ef | grep postgres

查看當前端口
netstat -ntlp

設置默認密碼
PostgreSQL安裝后會自動創建一個數據庫用戶,名為postgres
psql -U postgres postgres=# ALTER USER postgres with encrypted password 'admin'; (admin 密碼自由設置) postgres=# \q (可退出)
執行下面指令查看端口情況
netstat -an |grep 5432
至此,linux中的pgsql便安裝好了,但是現在的pgsql只能在linux上本地使用
外部遠程訪問,需在相關雲服務器管理界面上進行開放安全組。
如本人是阿里雲服務器
需添加如下配置:
1、

2、

3、

4、

然后打開Navicat

將你的外網IP填入主機輸入框
端口號按配置時的端口號來填寫
密碼填寫你設置的密碼
連接名填寫你自己想起的名字
點擊連接測試

到這里就整個pgsql部署完成了。
后續需要按各自情況配置數據賬號和權限