您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“postgresql的安裝和啟動(dòng)方法有哪些”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“postgresql的安裝和啟動(dòng)方法有哪些”吧!
兩種方法
1、二進(jìn)制安裝(linux是rpm包,其中yum方式也是rpm包的一種,windows是exe安裝文件,實(shí)際工作中這種方式多一點(diǎn))
2、源碼安裝
二進(jìn)制安裝
示例:centos7_64平臺(tái),數(shù)據(jù)庫(kù)postgresql11,使用yum安裝
不使用yum的話可以直接使用rpm包安裝,rpm包下載地址https://yum.postgresql.org/rpmchart.php
1、安裝RPM的yum源,其實(shí)就是下載一個(gè)postgresql的yum源pgdg-redhat-all.repo文件到/etc/yum.repos.d目錄下,有了這個(gè)yum源后,就可以直接yum install postgresql11安裝postgresql數(shù)據(jù)庫(kù)了
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2、安裝客戶端,,先執(zhí)行search看有哪些PostgreSQL client可供安裝
yum search 'PostgreSQL client'
yum install postgresql11
3、安裝服務(wù)端,先執(zhí)行search看有哪些PostgreSQL server可供安裝,以下步驟安裝好后,會(huì)自動(dòng)創(chuàng)建用戶postgres,自動(dòng)創(chuàng)建目錄/usr/pgsql-11
yum search 'PostgreSQL server'
yum install postgresql11-server
4、初始化數(shù)據(jù)庫(kù)并啟用開(kāi)機(jī)自動(dòng)啟動(dòng)
/usr/pgsql-11/bin/postgresql-11-setup initdb
systemctl enable postgresql-11
systemctl start postgresql-11
5、查看postgresql的進(jìn)程
[root@zabbixtest2 ~]# ps -ef|grep postgres
postgres 1527 1 0 01:13 ? 00:00:00 /usr/pgsql-11/bin/postmaster -D /var/lib/pgsql/11/data/
6、連接postgresql數(shù)據(jù)庫(kù)
su - postgres
psql -l
psql -d postgres
源碼安裝
1、建立postgresql用戶、內(nèi)核資源的配置,主要涉及/etc/security/limits.conf、/etc/sysctl.conf文件,類似oracle也需要配置這兩個(gè)文件
2、解壓tar包,進(jìn)入解壓目錄,使用root用戶執(zhí)行如下,最后的make install命令把軟件安裝到/postgresql/pgsql目錄
./configure --prefix=/postgresql/pgsql
make
make install
3、把軟件安裝目錄/postgresql/pgsql授權(quán)宿主用戶為postgresql
4、編輯postgresql用戶的.bash_profile文件,PATH= /postgresql/pgsql/bin :$PATH、LD_LIBRARY_PATH= /postgresql/pgsql /lib
5、初始化數(shù)據(jù)庫(kù),后面兩條命令任意一條都可以
su - postgresql
initdb -D /postgresql/pgsql/data
pg_ctl -D /postgresql/pgsql/data initdb
6、啟動(dòng)postgresql程序,下面任意一個(gè)都可以,官方文檔建議使用pg_ctl
postgres -D /postgresql/pgsql/data >logfile 2>&1 &
pg_ctl start -D /postgresql/pgsql/data -l logfile
7、查看postgresql的進(jìn)程
[root@zabbixtest1 ~]# ps -ef|grep postgres
postgre+ 803 1 0 07:10 pts/0 00:00:00 /postgresql/pgsql/bin/postgres -D /postgresql/pgsql/data
8、連接postgresql數(shù)據(jù)庫(kù),指定連接postgres庫(kù)
psql -l
psql -d postgres
備注:psql命令不加端口和不加數(shù)據(jù)庫(kù)名,表示默認(rèn)進(jìn)入端口為5432并且數(shù)據(jù)庫(kù)名和初始數(shù)據(jù)庫(kù)initdb時(shí)的用戶名一樣的數(shù)據(jù)庫(kù),比如初始數(shù)據(jù)庫(kù)initdb時(shí)的用戶名為A,則默認(rèn)進(jìn)入A庫(kù)。postgresql的默認(rèn)端口是5432,默認(rèn)數(shù)據(jù)庫(kù)是postgres、template0、template1
如果此時(shí)端口不是5432,則會(huì)報(bào)錯(cuò)psql: FATAL: role "A" does not exist
因?yàn)榘惭b用戶"A"對(duì)應(yīng)的實(shí)例端口為其他,端口5432數(shù)據(jù)庫(kù)的Owner不是"A"
如果此時(shí)沒(méi)有"A"庫(kù),則會(huì)報(bào)錯(cuò)psql: FATAL: database "A" does not exist
因?yàn)榘惭b用戶"A",默認(rèn)進(jìn)入"A"庫(kù),而"A"庫(kù)是不存在的
9、創(chuàng)建一個(gè)名為test的數(shù)據(jù)庫(kù)
createdb test
10、查看數(shù)據(jù)庫(kù)狀態(tài)
pg_ctl status -D /postgresql/pgsql/data
11、關(guān)閉數(shù)據(jù)庫(kù)
pg_ctl stop -D /postgresql/pgsql/data
官方文檔Short Version簡(jiǎn)要步驟
./configure
make
su
make install
adduser postgres
mkdir /usr/local/pgsql/data
chown postgres /usr/local/pgsql/data
su - postgres
/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data
/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &
/usr/local/pgsql/bin/createdb test
/usr/local/pgsql/bin/psql test
到此,相信大家對(duì)“postgresql的安裝和啟動(dòng)方法有哪些”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(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)容。