溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Linux CentOS 7如何安裝PostgreSQL9.3

發(fā)布時(shí)間:2022-01-24 11:40:50 來源:億速云 閱讀:269 作者:柒染 欄目:開發(fā)技術(shù)

今天就跟大家聊聊有關(guān)Linux CentOS 7如何安裝PostgreSQL9.3,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

PostgreSQL是一個(gè)功能非常強(qiáng)大的、源代碼開放的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),。PostgreSQL支持大部分的SQL標(biāo)準(zhǔn)并且提供了很多其他現(xiàn)代特性,如復(fù)雜查詢、外鍵、觸發(fā)器、視圖、事務(wù)完整性、多版本并發(fā)控制等

1、二進(jìn)制安裝包安裝

2、源碼編譯安裝

由于我們沒有什么特殊需求所在在此選擇較為簡(jiǎn)單的方式——二進(jìn)制安裝包安裝,二進(jìn)制包安裝的方法一般都是通過不同發(fā)行版本的Linux下的包管理器進(jìn)行的,例如Debian和Ubuntu下是使用apt-get命令或aptitude命令來安裝,命令如下:

sudo apt-get install postgresql

而在RedHat。CentOS或Fedora下則使用yum工具來安裝PostgreSQL,命令如下:

yum install postgresql-server.x86_64

先大概了解一下,下面就具體介紹一下整個(gè)安裝過程和細(xì)節(jié)。

安裝PostgreSQL

我選擇的是yum安裝,需求是9.3的版本,所以直接輸入軟件庫(kù)的位置即可(安裝之前可以通過rpm -qa | grep postgres命令查看是否有已安裝的postgresql的rpm包,如果有的話可以通過yum remove postgresql*命令執(zhí)行卸載):

復(fù)制代碼代碼如下:

yum install http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-redhat93-9.3-1.noarch.rpm

也可以直接在官方的RPM Repository中手動(dòng)下載指定版本,地址如下:PostgreSQL RPM Repository(with Yum) ,根據(jù)需求選擇基于CentOS 7的9.3版本即可:

Linux CentOS 7如何安裝PostgreSQL9.3

下載好之后進(jìn)入rpm包目錄運(yùn)行rpm -ivh ./pgdg-centos93-9.3-3.noarch.rpm安裝rpm包即可,之后就可以繼續(xù)安裝PostgreSQL以及一些必備的組件,如官方給出的Guide:

Linux CentOS 7如何安裝PostgreSQL9.3

如上圖,由于我們這里安裝的是9.3版本,所以直接輸入以下命令安裝即可:

yum install postgresql93-server postgresql93-contrib

安裝日志如下:

Linux CentOS 7如何安裝PostgreSQL9.3
Linux CentOS 7如何安裝PostgreSQL9.3
Linux CentOS 7如何安裝PostgreSQL9.3

安裝完成后首先要做的是初始化db,需要注意的一點(diǎn)是在CentOS 7中postgresql默認(rèn)的安裝目錄是:/usr/pgsql-9.3,默認(rèn)的數(shù)據(jù)目錄是/var/lib/pgsql/version/data,下面是官方給出的Guide:

Linux CentOS 7如何安裝PostgreSQL9.3

這里需要注意的是要到切換到postgresql的安裝目錄中執(zhí)行初始化命令,我們可以在安裝目錄中找到initdb腳本:

Linux CentOS 7如何安裝PostgreSQL9.3

進(jìn)入bin目錄運(yùn)行初始化命令即可完成數(shù)據(jù)庫(kù)的初始化:

Linux CentOS 7如何安裝PostgreSQL9.3

初始化成功就可以啟動(dòng)數(shù)據(jù)庫(kù)了并登錄了,啟動(dòng)命令如下:

systemctl start postgresql-9.3.service

啟動(dòng)后即可登錄,我們使用postgres用戶進(jìn)行登錄:

Linux CentOS 7如何安裝PostgreSQL9.3

如上圖所示,可以看到已經(jīng)成功啟動(dòng)服務(wù)并查詢了數(shù)據(jù)庫(kù)版本,接下來通過\l命令可以查看目前有哪些數(shù)據(jù)庫(kù):

Linux CentOS 7如何安裝PostgreSQL9.3

如上圖,可以看到默認(rèn)有4個(gè)數(shù)據(jù)庫(kù),\q為退出命令。為了安全起見,接下來我們修改一下postgres用戶的密碼,默認(rèn)是空:

alter user postgres with password ‘111111’;

如下圖:

Linux CentOS 7如何安裝PostgreSQL9.3

最后如果是作為DB服務(wù)器的話需要將數(shù)據(jù)庫(kù)服務(wù)設(shè)置為開機(jī)啟動(dòng):

Linux CentOS 7如何安裝PostgreSQL9.3

關(guān)于安裝相關(guān)的設(shè)置至此就已全部結(jié)束,接下來看看客戶端工具(Navicat)如何連接數(shù)據(jù)庫(kù)。

客戶端連接PostgreSQL

如題,既然客戶端要連接,首先第一步肯定是開放端口了,在CentOS 7中引入了一個(gè)更強(qiáng)大的防火墻——Firewall,所以我們需要在Firewall中開啟PostgreSQL的默認(rèn)端口5432,也就是將5432端口加入到zone(Firewall的新特性,簡(jiǎn)單講它的作用就是定義了網(wǎng)絡(luò)區(qū)域網(wǎng)絡(luò)連接的可信等級(jí))中。命令如下:

firewall-cmd –zone=public –add-port=5432/tcp –permanent

這樣就成功的將5432端口加入了public區(qū)域中,permanent參數(shù)表示永久生效,即重啟也不會(huì)失效,最后不要忘記更新防火墻規(guī)則:

firewall-cmd –reload

OK,下面看一下public區(qū)域下所有已打開的端口,命令如下:

firewall-cmd –zone=public –list-ports

可以看到5432端口已經(jīng)成功開放:

Linux CentOS 7如何安裝PostgreSQL9.3

只開放了端口并不夠,PostgreSQL在安全方面也做的很好,它可以指定哪些ip地址能遠(yuǎn)程訪問數(shù)據(jù)庫(kù)服務(wù)器,默認(rèn)情況下是只監(jiān)聽本地,所以首先需要讓PostgreSQL監(jiān)聽整個(gè)網(wǎng)絡(luò),首先進(jìn)入PostgreSQL的安裝目錄,找到配置文件,路徑如下:

cd /var/lib/pgsql/9.3/data/

主要修改以下兩個(gè)文件:

Linux CentOS 7如何安裝PostgreSQL9.3

如上圖,首先的PostgreSQL的主配置文件postgresql.conf,將listen_addresses前的#去掉,并將listen_addresses = ‘localhost’改成listen_addresses = ‘*’:

Linux CentOS 7如何安裝PostgreSQL9.3

接下來要修改pg_hba.conf文件,將允許訪問的ip地址加進(jìn)列表,格式為”Type Database User Address Method”,比如我希望只有192.168.111.1這個(gè)地址能遠(yuǎn)程訪問PostgreSQL數(shù)據(jù)庫(kù)的話,加入下面的配置即可:

Linux CentOS 7如何安裝PostgreSQL9.3

最后重啟數(shù)據(jù)庫(kù)服務(wù)使配置生效:

systemctl restart postgresql-9.3.service

此時(shí)就用主機(jī)的Navicat(192.168.111.1)連接虛擬機(jī)中的PostgreSQL服務(wù)器測(cè)試一下:

Linux CentOS 7如何安裝PostgreSQL9.3

如上圖,可以看到成功連接,至此關(guān)于PostgreSQL的安裝就已全部介紹完畢。

看完上述內(nèi)容,你們對(duì)Linux CentOS 7如何安裝PostgreSQL9.3有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI