環(huán)境說明:
1. 操作系統(tǒng)
2. 必須的依賴工具庫
2.1 make版本3.80或以上
2.2 GCC編譯器
2.3 GNU Readline庫:它允許psql記住你輸入的每個(gè)命令,這樣就可以通過上下方向鍵快速輸入之前的命令,默認(rèn)開啟,也可以通過編譯參數(shù)--without-readline來禁止它,建議保留默認(rèn)。
2.4 Zlib庫
3. 下載源碼包,下載地址
4. 開始安裝
4.1 基礎(chǔ)依賴安裝
sudo yum install -y readline readline-devel openssl openssl-devel zlib zlib-devel
4.2 生成makefile文件
./configure --prefix=/home/linjk/usr/postgresql
成功:
4.3 編譯 : make
4.4 安裝 : make install
4.5 配置環(huán)境變量 (vim ~/.bash_profile)
(為了統(tǒng)一,后面改為PGHOME,這就不重新截圖了)
4.6 目錄授權(quán)
mkdir /home/linjk/usr/postgresql/data
sudo chown -R linjk:linjk /home/linjk/usr/postgresql/
4.7 初始化數(shù)據(jù)庫
看看數(shù)據(jù)文件夾目錄:
base目錄是表空間目錄,global目錄是相關(guān)全局變量目錄, pg_hba.conf是訪問控制配置文件,postgresql.conf是postgresql主配置文件。
修改pg_hba.conf:
修改為如下(0.0.0.0/0表示信任來自所有id連接的客戶端,加密方式才有md5):
修改postgresql.conf:
localhoat改為*,表示監(jiān)聽所有網(wǎng)絡(luò)連接。
連接參數(shù)保持默認(rèn):
4.8 防火墻開放端口
sudo firewall-cmd --zone=public --add-port=5432/tcp --permanent
sudo firewall-cmd --reload
4.9 啟動(dòng)
4.10
在4.7步初始化數(shù)據(jù)庫時(shí),提示了啟動(dòng)方式,注意有一個(gè)logfile,這里在安裝目錄增加一個(gè)文件夾log,用來記錄日志:
啟動(dòng):
關(guān)閉:
pg_ctl -D /home/linjk/usr/postgresql/data/ -l /home/linjk/usr/postgresql/log/server.log stop
4.11 配置
這里使用psql命令行交互式客戶端工具去連接postgresql,它類似與Oracle的命令行工具sqlplus,也可以使用圖形交互界面pgAdmin4,后面會(huì)介紹如何安裝。連接數(shù)據(jù)庫的格式:
psql -h {主機(jī)名或IP地址} -p {端口} {數(shù)據(jù)庫名稱} {用戶名稱}
這些參數(shù)也可以通過環(huán)境變量指定:
PGDATABASE、PGHOST、PGPORT、PGUSER
指定了環(huán)境變量,后面直接運(yùn)行psql命令即可直接連接指定的數(shù)據(jù)庫。
連接時(shí)提示如下錯(cuò)誤:
為什么會(huì)出現(xiàn)這個(gè)錯(cuò)誤?因?yàn)樵诎惭bPostgreSQL時(shí),會(huì)建立一個(gè)與初始化數(shù)據(jù)庫時(shí)擦用戶名的同名數(shù)據(jù)庫用戶,同時(shí),這個(gè)用戶就是數(shù)據(jù)庫的超級(jí)用戶,在這個(gè)用戶登錄時(shí)執(zhí)行的是操作系統(tǒng)認(rèn)證,所以不需要用戶名和密碼(如也需密碼認(rèn)證,可修改文件pg_hba.conf),之前用的linjk用戶初始化,沒有建立數(shù)據(jù)庫linjk,因此,這里首先新建一個(gè)linjk名稱的數(shù)據(jù)庫。
創(chuàng)建一個(gè)名為linjk的數(shù)據(jù)庫:
再次連接可登錄成功,注意,此時(shí)密碼為空,需要設(shè)置密碼,輸入\password可設(shè)置密碼(psql的命令以斜杠'\'開頭):
輸入\l可以查看所有數(shù)據(jù)庫列表:
template0和template1是模板數(shù)據(jù)庫,用戶在建數(shù)據(jù)庫時(shí),默認(rèn)從模板數(shù)據(jù)庫template1克隆出來的,因此,我們可以定制template1數(shù)據(jù)庫中的內(nèi)容,如增加公共的表或函數(shù),這樣后續(xù)創(chuàng)建的新庫也有擁有這些表或函數(shù),相比于template1數(shù)據(jù)庫,template0數(shù)據(jù)庫是最簡化的數(shù)據(jù)庫。
輸入\d可查看數(shù)據(jù)庫中的所有表。
輸入\c {數(shù)據(jù)庫名} 可切換當(dāng)前使用的使用數(shù)據(jù)庫。
輸入\q可退出登陸。
--------------------------------------------------------------------------------------------------------------------
4.12 安裝Web管理工具pgAdmin4
A. 下載
注意,服務(wù)器需要有python環(huán)境,linux服務(wù)器一般都默認(rèn)安裝了python和pip了
B. 安裝
sudo pip install --upgrade pip
sudo pip install pgadmin4-3.0-py2.py3-none-any.whl
報(bào)錯(cuò):
sudo yum install -y python-devel
再次安裝,成功:
C. 配置
cd /usr/lib/python2.7/site-packages/pgadmin4
sudo python pgAdmin4.py
配置賬號(hào)信息:
這樣應(yīng)該后臺(tái)方式啟動(dòng): sudo python pgAdmin4.py &
D 登陸
E 添加數(shù)據(jù)庫監(jiān)控
點(diǎn)擊"Add New Server",輸入pg數(shù)據(jù)庫的連接信息即可:
F 數(shù)據(jù)庫添加擴(kuò)展,以dblink為例
在彈出的窗口中沒有任何擴(kuò)展,需要安裝:
進(jìn)入postgresql源碼目錄,如下:
注意,事先在源碼根目錄configure過生成makefile及make過一次的。
執(zhí)行make和make install:
在pg的安裝目錄下的lib子目錄生成dblink的動(dòng)態(tài)鏈接庫dblink.so:
這時(shí)候在pgAdmin4管理頁面就能選擇到dblink擴(kuò)展了:
聯(lián)系客服