最近工作中需要部署一套資料庫服務到內網伺服器上,藉此機會,我重新整理了postgresql資料庫的搭建及入門使用方法 1、安裝方式(兩種選一種) a、第一種方式 sudo yum install -y https://download.postgresql.org/pub/repos/yum/rep ...
最近工作中需要部署一套資料庫服務到內網伺服器上,藉此機會,我重新整理了postgresql資料庫的搭建及入門使用方法
1、安裝方式(兩種選一種)
a、第一種方式
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql11-server
sudo /usr/pgsql-10/bin/postgresql-11-setup initdb
sudo systemctl enable postgresql-11
sudo systemctl start postgresql-11
註意:出現“缺少libzstd.so.1的依賴解決方案”,安裝如下兩個包即可解決
yum install epel-release.noarch -y
yum install libzstd.x86_64 -y
b、第二種方式
登錄官網,找到對應的腳步進行下載安裝
下載地址:https://www.postgresql.org/download/
安裝完成後驗證下服務是否正常啟動,在linux伺服器上執行並查看返回結果,看看進程裡面是否存在postgresql相關的進程
ps -aux | grep postgres
2、設置登陸用戶postgres
- cat /etc/passwd查看系統中的用戶列表,新增了postgres用戶
- 執行su - postgres切換到postgres用戶。
- 執行psql登錄資料庫。
- 執行\l列出名下的資料庫列表。
- 執行ALTER USER postgres WITH PASSWORD '密碼'; 修改postgres用戶密碼,結尾一定要帶分號結束符 ";"
備註:
- 列出所有庫:\l
- 列出所有用戶:\du
- 列出庫下所有表:\d
- 退出:\q
3、修改配置支持遠程訪問
預設情況下postgres是不支持遠程登錄的。需做如下兩處修改:
(1)/var/lib/pgsql/11/data/postgresql.conf 配置修改
支持在本地所有地址上監聽
說明:listen_addresses表示監聽的IP地址,預設在localhost處監聽,即127.0.0.1的IP地址上監聽,這會讓遠程的主機無法登錄這台資料庫。如果想從其他機器上登陸這台資料庫,需把監聽地址改為實際的網路地址,一種簡單的方式是把這個值改為*,表示在本地的所有地址上監聽。
參數port表示監聽的資料庫埠,預設為5432,支持自定義監聽埠。
(2)/var/lib/pgsql/11/data/pg_hba.conf 配置修改
說明:添加紅框內的配置以支持遠程連接
完成上述2處配置修改後,需重啟pg服務才能生效:
systemctl restart postgresql-11