centos7 安裝postgresql11(轉載+原創補充)

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
來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章