Centos環(huán)境下Postgresql 安裝配置及環(huán)境變量配置技巧
1、yum安裝
進(jìn)去postgresql官網(wǎng)下載界面 PostgreSQL: Downloads
選擇操作系統(tǒng)
選擇系統(tǒng)版本,平臺信息等 會出現(xiàn)具體的安裝步驟

拷貝腳本,自動執(zhí)行并創(chuàng)建了數(shù)據(jù)庫實(shí)例
上面的創(chuàng)建數(shù)據(jù)庫實(shí)例 sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
允許開機(jī)自啟動postgresql數(shù)據(jù)庫 sudo systemctl enable postgresql-13
操作系統(tǒng)的服務(wù)管理命令啟動數(shù)據(jù)庫 sudo systemctl start postgresql-13
停止數(shù)據(jù)庫命令 sudo systemctl stop postgresql-13
查看數(shù)據(jù)庫狀態(tài)命令 sudo systemctl status postgresql-13
可選 安裝contrib包,contrib包中包含了一些插件和工具 yum install postgresql12-contrib
切換用戶為postgres su - postgres
連接數(shù)據(jù)庫 psql推出數(shù)據(jù)庫 \q
2、從源碼安裝(推薦)
1、https://www.postgresql.org/download/ 在官方下載界面,點(diǎn)擊左側(cè)的Source 進(jìn)入源代碼下載界面
2、選擇合適的版本
3、選擇合適的壓縮包下載,一般來說bz2 格式的壓縮包體積較小
3、編譯以及安裝
4、解壓安裝包
tar -xvf postgresql-13.tar.gz
5、進(jìn)入目錄
cd postgresql-13
6、編譯安裝命令
./configure --prefix=/usr/local/pgsql13 --with-perl --with-python make make install 命令解析 --prefix=/usr/local/pgsq13 確定其安裝目錄 --with-perl 加上改選項(xiàng)可以使用perl語法的PL/Perl 過程語言來編寫自定義函數(shù)。使用該選項(xiàng)需要先安裝perl包,在ubantu或者Debian下名稱為libperl-dev --with-python 加上改選項(xiàng)可以使用python語法的Py/Python 過程語言來編寫自定義函數(shù)。使用該選項(xiàng)需要先安裝python-devk開發(fā)包。
7、創(chuàng)建用戶組和用戶
groupadd postgres useradd -g postgres postgres
8、建立鏈接
cd /usr/local sudo ln -sf /usr/local/pgsql13 /usr/local/pgsql 命令解析 之前--prefix設(shè)置的路徑為/usr/local/pgsql13 如果不設(shè)置路徑,默認(rèn)的路徑為 /usr/local/ 創(chuàng)建路徑的的時候加上了版本號,為了以后方便升級 如果要升級到更高版本的數(shù)據(jù)庫,只需要停掉現(xiàn)在的數(shù)據(jù)庫,在編譯更高版本的數(shù)據(jù)庫postgreslq14 后,將鏈接 /usr/local/pgsql 指向新版本的目錄 /usr/local/pgsql14 即可完成升級
9、創(chuàng)建數(shù)據(jù)庫庫文件存儲目錄、給postgres賦予權(quán)限
mkdir /usr/local/pgsql/data cd /usr/local/ chown postgres.postgres pgsql
10、 初始化數(shù)據(jù)庫目錄:
切換用戶 su - postgresql 初始化數(shù)據(jù) -D指定初始化創(chuàng)建的數(shù)據(jù)庫的文件路徑 /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
11、啟動和關(guān)閉數(shù)據(jù)庫服務(wù)
pg_ctl start pg_ctl stop
3、配置數(shù)據(jù)庫
1、配置環(huán)境變量
在 /etc/profile 或者 ~/.bash_profile中添加以下內(nèi)容 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下找到配置文件
默認(rèn)創(chuàng)建的數(shù)據(jù)庫無法接受遠(yuǎn)程鏈接在pg_hba.conf中加入一下命令 host all all 0/0 md5 該命令允許任何賬戶遠(yuǎn)程連接數(shù)據(jù)庫,連接時需要提供密碼 pg_hba.conf 是一個黑白名單的訪問控制文件,可以控制允許哪些IP地址訪問數(shù)據(jù)庫
3修改監(jiān)聽的IP和端口
在數(shù)據(jù)目錄下編輯 postgres.conf文件 修改 # listen_addresses = 'localhost' # port = 5432 參數(shù)listen_addresses 表示的是監(jiān)聽地址,默認(rèn)是在 localhost監(jiān)聽,這會造成遠(yuǎn)程主機(jī)無法訪問,需要把監(jiān)聽地址改為實(shí)際的網(wǎng)絡(luò)地址,一種簡單的方式是把地址改為'*' listen_addresses = '*' 參數(shù)port表示數(shù)據(jù)庫的端口,默認(rèn)為5432,如果一臺機(jī)器上安裝了多個數(shù)據(jù)庫實(shí)例,筆者就是在docker上也有一個數(shù)據(jù)服務(wù),占用了5432的端口。所以對host進(jìn)行了修改 對于上述兩個參數(shù),需要重啟數(shù)據(jù)庫才會生銷
4、備注
如果修改了host端口,需要在/etc/profile 或者 ~/.bash_profile 在加入一行內(nèi)容 exprot PGHOST=新的端口
以上就是Centos環(huán)境下Postgresql 安裝配置及環(huán)境變量配置技巧的詳細(xì)內(nèi)容,更多關(guān)于Postgresql 安裝配置的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Postgresql根據(jù)響應(yīng)數(shù)據(jù)反向?qū)崿F(xiàn)建表語句與insert語句的過程
根據(jù)已有數(shù)據(jù),可構(gòu)建名為products的表,包含id(自增主鍵)、title(非空字符串)、progress(非空整數(shù))三個字段,建表后,可通過insert語句插入數(shù)據(jù),這種反向操作有助于從現(xiàn)有數(shù)據(jù)結(jié)構(gòu)出發(fā),快速構(gòu)建數(shù)據(jù)庫表,并進(jìn)行數(shù)據(jù)填充,感興趣的朋友跟隨小編一起看看吧2022-02-02
postgresql開啟pg_log日志詳細(xì)步驟及參數(shù)說明
pg_log日志要啟動保存的話需要去設(shè)置一下相關(guān)的配置文件參數(shù)就好了,下面這篇文章主要給大家介紹了關(guān)于postgresql開啟pg_log日志詳細(xì)步驟及參數(shù)說明的相關(guān)資料,需要的朋友可以參考下2024-02-02
PostgreSQL教程(四):數(shù)據(jù)類型詳解
這篇文章主要介紹了PostgreSQL教程(四):數(shù)據(jù)類型詳解,本文講解了數(shù)值類型、字符類型、布爾類型、位串類型、數(shù)組、復(fù)合類型等數(shù)據(jù)類型,需要的朋友可以參考下2015-05-05
postgresql 將逗號分隔的字符串轉(zhuǎn)為多行的實(shí)例
這篇文章主要介紹了postgresql 將逗號分隔的字符串轉(zhuǎn)為多行的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-02-02
關(guān)于PostgreSql數(shù)據(jù)庫與mysql數(shù)據(jù)庫的不同點(diǎn)以及注意事項(xiàng)
PostgreSQL和MySQL是兩種流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),它們都可以用來存儲和管理數(shù)據(jù),但是它們在某些方面有所不同,下面這篇文章主要給大家介紹了關(guān)于PostgreSql數(shù)據(jù)庫與mysql數(shù)據(jù)庫的不同點(diǎn)以及注意事項(xiàng)的相關(guān)資料,需要的朋友可以參考下2023-05-05
PostgreSQL連接數(shù)過多報錯:too many clients already的解決
在使用 Navicat 連接 PostgreSQL 數(shù)據(jù)庫時,突然遭遇到了一個報錯:“FATAL: sorry, too many clients already”,這一錯誤提示表明數(shù)據(jù)庫連接數(shù)已經(jīng)達(dá)到上限,無法再創(chuàng)建新連接,所以本文給大家介紹了相關(guān)的解決辦法,需要的朋友可以參考下2024-03-03

