Centos環境下Postgresql 安裝配置及環境變量配置技巧

1、yum安裝

進去postgresql官網下載界面 PostgreSQL: Downloads

選擇操作系統

選擇系統版本,平臺信息等 會出現具體的安裝步驟

拷貝腳本,自動執行並創建瞭數據庫實例

上面的創建數據庫實例
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
允許開機自啟動postgresql數據庫
sudo systemctl enable postgresql-13
操作系統的服務管理命令啟動數據庫
sudo systemctl start postgresql-13
停止數據庫命令
sudo systemctl stop postgresql-13
查看數據庫狀態命令
sudo systemctl status postgresql-13

可選 安裝contrib包,contrib包中包含瞭一些插件和工具 yum install postgresql12-contrib

切換用戶為postgres su - postgres

連接數據庫 psql推出數據庫 \q

2、從源碼安裝(推薦)

1、https://www.postgresql.org/download/ 在官方下載界面,點擊左側的Source 進入源代碼下載界面

2、選擇合適的版本

3、選擇合適的壓縮包下載,一般來說bz2 格式的壓縮包體積較小

3、編譯以及安裝

4、解壓安裝包

tar -xvf postgresql-13.tar.gz

5、進入目錄

 cd postgresql-13

6、編譯安裝命令

./configure --prefix=/usr/local/pgsql13 --with-perl --with-python
make
make install
 
命令解析
--prefix=/usr/local/pgsq13 確定其安裝目錄
--with-perl 加上改選項可以使用perl語法的PL/Perl 過程語言來編寫自定義函數。使用該選項需要先安裝perl包,在ubantu或者Debian下名稱為libperl-dev
 
--with-python 加上改選項可以使用python語法的Py/Python 過程語言來編寫自定義函數。使用該選項需要先安裝python-devk開發包。

 7、創建用戶組和用戶

groupadd postgres
useradd -g postgres postgres

8、建立鏈接

cd /usr/local
sudo ln -sf /usr/local/pgsql13 /usr/local/pgsql
 
命令解析
之前--prefix設置的路徑為/usr/local/pgsql13 如果不設置路徑,默認的路徑為 /usr/local/
創建路徑的的時候加上瞭版本號,為瞭以後方便升級
如果要升級到更高版本的數據庫,隻需要停掉現在的數據庫,在編譯更高版本的數據庫postgreslq14 後,將鏈接 /usr/local/pgsql 指向新版本的目錄 /usr/local/pgsql14 即可完成升級

9、創建數據庫庫文件存儲目錄、給postgres賦予權限

mkdir /usr/local/pgsql/data
cd /usr/local/
chown postgres.postgres pgsql

10、 初始化數據庫目錄:

切換用戶
 
su - postgresql
 
初始化數據 -D指定初始化創建的數據庫的文件路徑
 
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

11、啟動和關閉數據庫服務

pg_ctl start
pg_ctl stop

3、配置數據庫

1、配置環境變量

在 /etc/profile 或者 ~/.bash_profile中添加以下內容
 
export PGHOME=/usr/local/pgsql   
export PGDATA=/usr/local/pgsql/data
export LD_LIBRARY_PATH=/usr/local/pgslq/lib
export PATH=$PATH:$HOME/bin:/usr/local/pgsql/bin
 
命令解析
bash 登陸的時候讀取配置文件的順序如下:
 
.bash_profile
.bash_login
.profile
 
按這個順序隻要讀到一個就不再讀取其他兩個。全局的/etc/profile是最先讀的,/etc/profile裡面的配置可以在以上三個文件中覆蓋掉。

 2、簡單配置 在/usr/local/pgsql/data下找到配置文件

默認創建的數據庫無法接受遠程鏈接在pg_hba.conf中加入一下命令
host all  all  0/0 md5
 
該命令允許任何賬戶遠程連接數據庫,連接時需要提供密碼
pg_hba.conf 是一個黑白名單的訪問控制文件,可以控制允許哪些IP地址訪問數據庫

 3修改監聽的IP和端口

在數據目錄下編輯 postgres.conf文件
修改
# listen_addresses = 'localhost'
# port = 5432
 
參數listen_addresses 表示的是監聽地址,默認是在 localhost監聽,這會造成遠程主機無法訪問,需要把監聽地址改為實際的網絡地址,一種簡單的方式是把地址改為'*'
listen_addresses = '*'
 
參數port表示數據庫的端口,默認為5432,如果一臺機器上安裝瞭多個數據庫實例,筆者就是在docker上也有一個數據服務,占用瞭5432的端口。所以對host進行瞭修改
 
對於上述兩個參數,需要重啟數據庫才會生銷

4、備註

如果修改瞭host端口,需要在/etc/profile 或者 ~/.bash_profile 在加入一行內容
exprot PGHOST=新的端口

以上就是Centos環境下Postgresql 安裝配置及環境變量配置技巧的詳細內容,更多關於Postgresql 安裝配置的資料請關註WalkonNet其它相關文章!

推薦閱讀: