注:我自己用的是阿里雲源
首先到官網找到適合自己的版本
開始安裝客戶端
yum install postgresql12
安裝服務端
yum install postgresql12-server
待以上都安裝成功之后需要初始化數據庫,在初始化數據庫的時候默認的數據庫地址是:
因為后續的配置文件都在這個目錄里,所以在初始化之前,你可以根據實際需要進行修改
開啟遠程連接
修改postgresql.conf文件(在剛剛上面初始化里的數據庫地址),找到#listen_addresses = 'localhost' 把前面的注釋去掉 修改為 listen_addresses = '*' 保存
修改pg_hba.conf文件,增加數據庫訪問權限,增加的一條意思是 允許來自192.168.111.*網段的 postgres用戶 訪問所有數據庫
啟動數據庫
設置用戶postgres密碼
注意如果有防火牆開放的話 記得關閉防火牆或開放防火牆端口哦,端口:5432
至此 postgresql已經安裝成功且可以遠程連接訪問了
續
因為在使用到UUID的時候 發現是一個插件里的功能,但默認安裝的時候是不帶插件的,所以 我們需要獨立安裝屬於自己對應版本的插件
yum search contrib 找到自己對應的安裝包,然后安裝
查看版本: psql --version 或 SELECT version();
查看所有數據庫:select * from pg_database;
安裝完成后進入/usr/pgsql-12/share/extension/ 查看所有可用的插件
如果要啟用某個插件,直接
create extension pgcrypto
可以安裝就可以卸載:
drop extension pgcrypto(插件的名字) 就可以卸載插件了
數據庫備份與還原
目前提供三種備份還原機制1. SQL轉儲 2.文件系統級別備份 3.連續歸檔和時間點恢復(PITR)
其中1.SQL轉儲轉儲的文件較小,因為只保留了重建索引的命令而不是備份索引 2.文件系統級別備份 顧名思義就是直接找到這個目錄備份這個目錄就好了,這個速度快,但數據一致性差,建議在系統可以有接近零訪問的系統使用 3.這個方法比較麻煩,但有很明顯的有點就是時間點恢復等等
1.SQL轉儲
su postgresql
pg_dump DBName > DBName.sql
#顯示所有數據庫
\l 小寫的L
2.文件系統級別備份
找到數據庫文件的文件系統路徑,我這里12版本的路徑是:/var/lib/pgsql/12/data
示例:cp /var/lib/pgsql/12/data /var/lib/pgsql/12/data_20200808
注意點:不停機的備份,停機的備份
不停機的備份還原:還原備份文件里的 base文件夾到當前數據庫文件目錄里即可(這個思路比較野,官方未說明,自己嘗試)
停機的備份:直接還原這個目錄即可