1 進入postresql官網下載頁面,提示了centos相關下載安裝等信息。
https://www.postgresql.org/download/linux/redhat/
image.png
2 連接到centos7服務器
image.png
3 根據官網提示在命令行中下載安裝
yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm
image.png
yum install postgresql11
yum install postgresql11-server
附帶安裝
yum install postgresql11-libs
yum install postgresql11-contrib
yum install postgresql11-devel
4 數據庫初始化與設置自啓動
/usr/pgsql-11/bin/postgresql-11-setup initdb
systemctl enable postgresql-11
systemctl start postgresql-11
image.png
這一步初始化數據庫命令會在 /var/lib/pgsql 目錄下創建名稱爲11文件夾,11爲數據庫版本,如果安裝的是其他版本,對應的是其版本號(9.4、9.5);這裏如果已經有對應版本的文件夾了,初始化這一步會報錯,需要你自行去刪除對應的文件夾,再去初始化。
5 默認會創建一個名爲postgres的linux登錄用戶,這裏進行密碼修改
(注意,這裏修改的是linux登陸的賬號密碼,不是數據庫的)
passwd postgres
image.png
6 編輯一些遠程連接信息,讓所有計算機能訪問到該測試數據庫
6.1 對postgresql.conf文件進行編輯
cd var/lib/pgsql/11/data
vim postgresql.conf
修改前:
image.png
輸入a進入插入編輯模式,對該文件進行編輯;
去掉#,修改localhost爲*
修改後如下,按下esc退出插入編輯模式,並輸入:wq保存退出
image.png
6.2同樣目錄下,對pg_hba.conf文件進行編輯
vim pg_hba.conf
修改前:
image.png
輸入a進入插入編輯模式,對該文件進行編輯
修改後如下,按下esc退出插入編輯模式,並輸入:wq保存退出
image.png
7 重新啓動服務
systemctl restart postgresql-11
8 用postgres賬號登錄centos服務器,並修改數據庫用戶密碼(或者直接 su postgres 切換過去)
ssh postgres@ip -p 端口
---------------------------------------------博主補充修改部分---------------------------------
博主按原博主的教程走到上面這一步的時候就報錯了,實際情況是已經正常安裝,由於CENTOS系統的端口是要自己開放的,所以需要自己開放端口5432
添加指定需要開放的端口:
firewall-cmd --add-port=5432/tcp --permanent
重載入添加的端口:
firewall-cmd --reload
查看開放所有端口
firewall-cmd --list-port
檢查是否正常安裝
OK
也可以查詢版本號看看是否成功安裝
select version();
附帶密碼修改教程
linux shell命令下面輸入: sudo -u postgres psql (這樣就可以直接登錄進postgres 了, 然後在裏面可以進行添加用戶,修改密碼之類的,都不是問題了!!)
-----------------------------------------------------------------------------------------------------------------
修改PostgreSQL數據庫的默認用戶postgres的密碼(注意不是linux系統帳號)
第一步:1、PostgreSQL登錄(使用psql客戶端登錄)
# sudo -u postgres psql
//其中,sudo -u postgres 是使用postgres 用戶登錄的意思
//PostgreSQL數據默認會創建一個postgres的數據庫用戶作爲數據庫的管理員,密碼是隨機的,所以這裏
//設定爲'postgres'
2.修改PostgreSQL登錄密碼:
postgres=# ALTER USER postgres WITH PASSWORD 'postgres';
//postgres=#爲PostgreSQL下的命令提示符
3.退出PostgreSQL psql客戶端
postgres=# \q
[代碼說明]
‘#’和’#'之前的字符是系統提示符,’postgres=#’是psql客戶端的提示符,紅色字符爲輸入命令(本文其它部分亦如此);
[功能說明]
PostgreSQL數據默認會創建一個postgres的數據庫用戶作爲數據庫的管理員,密碼是隨機的,我人需要修改爲指定的密碼,這裏設定爲’postgres’
第二步:修改linux系統的postgres用戶的密碼(密碼與數據庫用戶postgres的密碼相同)
1.刪除PostgreSQL用戶密碼
# sudo passwd -d postgres
passwd: password expiry information changed.
//passwd -d 是清空指定用戶密碼的意思
2.設置PostgreSQL用戶密碼
PostgreSQL數據默認會創建一個linux用戶postgres,通過上面的代碼修改密碼爲'postgres’(這取決於
第二步中的密碼,只要與其相同即可)。
現在,我們就可以在數據庫服務器上用 postgres帳號通過psql或者pgAdmin等等客戶端操作數據庫了。
#sudo -u postgres passwd
輸入新的 UNIX 密碼:
重新輸入新的 UNIX 密碼:
passwd:已成功更新密碼
----------------------------------------------------------------分割線----------------------------------------------------------------------
---------------------------------------------博主補充修改部分---------------------------------
psql -U postgres
\password
image.png
查看版本
image.png
9 在數據庫客戶端測試登錄
image.png
10 備用卸載
yum remove postgresql*
前人經驗參考
https://www.jianshu.com/p/3f8d77d258d8
https://www.jianshu.com/p/639ebb43bfb4
https://www.cnblogs.com/freeweb/p/8006639.html
http://www.postgresonline.com/article_pfriendly/362.html
https://www.cnblogs.com/yanmiao/p/3262306.html
作者:gis杭州
鏈接:https://www.jianshu.com/p/b4a759c2208f
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。