PostgreSQL 安裝

簡述

以前用習慣了MySQL干旧,來到新公司開始接觸PostgreSQL渠欺,這個名字讀起來可真拗口呀。
鑒于MySQL和PostgreSQL都是目前比較流行的開源免費數據庫椎眯,也被各個互聯網公司廣泛使用挠将,甚至一些傳統(tǒng)型的公司也開始放棄Oracle,轉投MySQL和PostgreSQL的懷抱编整。

至于兩者之間的比較和對比舔稀,由于初次接觸PostgreSQL,暫時還不便評論掌测,先從最初始的安裝走起内贮。

環(huán)境準備

Host List

IP Address Hosts Disk Comment
192.168.0.22 db 1TB Database Host

OS

我們采用CentOS作為宿主機操作系統(tǒng),版本請升級為最新穩(wěn)定版7.6汞斧。(CentOS7即可夜郁,建議升級到最新穩(wěn)定版7.6)
升級方式,請參考本人的另一篇文章:http://www.reibang.com/p/3e3bc1f51332

并將內核升級到最新穩(wěn)定版本4.20.

[root@localhost ~]# uname -sr
Linux 4.20.0-1.el7.elrepo.x86_64
[root@localhost ~]# 
[root@localhost ~]# 

安裝步驟

看了PG的官網断箫,本來準備安裝最新的PG12拂酣,結果官網說PG12現在剛剛做了崩潰測試,甚至還沒有Alpha和Beta測試仲义,建議繼續(xù)使用PG10婶熬,那我們就老老實實的繼續(xù)PG10吧。

下載安裝

首先安裝yaml包

yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm

安裝PG Server埃撵。

yum install postgresql10-contrib postgresql10-server -y

此時赵颅,進入到/usr目錄應該可以看到PG10的目錄。

[root@localhost usr]# ls -al
total 176
drwxr-xr-x.  14 root     root      4096 Dec 28 13:50 .
dr-xr-xr-x.  17 root     root      4096 Jan  7 15:09 ..
dr-xr-xr-x.   2 root     root     28672 Dec 28 13:50 bin
drwxr-xr-x.   2 root     root         6 Apr 11  2018 etc
drwxr-xr-x.   2 root     root         6 Apr 11  2018 games
drwxr-xr-x.   3 root     root        22 Apr 11  2018 include
dr-xr-xr-x.  47 root     root      8192 Dec 28 10:45 lib
dr-xr-xr-x.  53 root     root     36864 Dec 28 11:29 lib64
drwxr-xr-x.  25 root     root      4096 Dec 28 10:45 libexec
drwxr-xr-x.  12 root     root      4096 Apr 11  2018 local
drwxr-xr-x    6 root     root    48 Dec 28 13:50 pgsql-10
dr-xr-xr-x.   2 root     root     16384 Dec 28 11:29 sbin
drwxr-xr-x. 118 root     root      4096 Dec 28 11:29 share
drwxr-xr-x.   4 root     root        32 Apr 11  2018 src
lrwxrwxrwx    1 root     root        10 Dec 28 10:43 tmp -> ../var/tmp
[root@localhost usr]# 

至此已安裝完畢暂刘,接下來我們對數據庫進行初始化饺谬。

初始化數據庫

準備數據庫存儲目錄

由于PG會默認采用/data作為數據庫數據文件存儲路徑,我們運維把磁盤空間全部mount到/home目錄,暫時不能重新mount募寨,如果是自己的環(huán)境族展,可以重新規(guī)劃磁盤。所以我們需要將PG的數據盤符路徑調整到/home目錄下拔鹰。重申:這是研發(fā)測試環(huán)境仪缸,如果生產環(huán)境,還請采用標準的磁盤規(guī)劃列肢。

[root@localhost ~]# mkdir /home/postgresql
[root@localhost ~]# mkdir /home/postgresql/data

增加PG相關用戶并賦權

我們需要創(chuàng)建PG的專屬用戶恰画,并將PG相關的目錄全部轉歸該用戶下。
yum安裝postgresql瓷马,默認會建一個名為”postgres”的系統(tǒng)賬號拴还,用于執(zhí)行PostgreSQL;
可以查詢下欧聘,如果沒有創(chuàng)建片林,則手工創(chuàng)建下。

[root@localhost ~]# useradd postgres
useradd: user 'postgres' already exists
[root@localhost ~]# 

調整相關目錄的權限树瞭。

[root@localhost ~]#  chown -R postgres:postgres /home/postgresql
[root@localhost ~]#  chmod 750 -R /home/postgresql
[root@localhost ~]# chown -R postgres:postgres /usr/pgsql-10

修改Root用戶的profile拇厢,增加PG相關的環(huán)境變量。

[root@localhost ~]# vi .bash_profile 
export LD_LIBRARY_PATH=/usr/pgsql-10/bin
export PGDATA=/home/postgresql/data

修改postgres用戶的環(huán)境變量晒喷。

[root@localhost ~]# su postgres
bash-4.2$ cd ~
bash-4.2$ ls -al
total 16
drwx------   3 postgres postgres   75 Dec 28 14:28 .
drwxr-xr-x. 41 root     root     4096 Dec 28 13:50 ..
drwx------   4 postgres postgres   31 Dec 28 13:50 10
-rw-------   1 postgres postgres  500 Dec 28 14:28 .bash_history
-rwx------   1 postgres postgres  265 Dec 28 14:02 .bash_profile
-rw-------   1 postgres postgres   23 Dec 28 14:28 .psql_history
bash-4.2$ vi .bash_profile
[ -f /etc/profile ] && source /etc/profile
PGDATA=/home/postgresql/data
export PGDATA
......

執(zhí)行初始化孝偎。

bash-4.2$ cd /usr/pgsql-10/bin
bash-4.2$ ./postgresql-10-setup initdb

設置自啟動

退出postgres用戶,用root用戶執(zhí)行如下命令凉敲。

[root@localhost ~]# systemctl enable postgresql-10

修改PG啟動的參數衣盾,修改PGDATA路徑。

[root@localhost ~]# vi /usr/lib/systemd/system/postgresql-10.service
......
# Location of database directory
Environment=PGDATA=/home/postgresql/data/
......
[root@localhost ~]# systemctl restart postgresql-10
[root@localhost ~]# systemctl status postgresql-10
● postgresql-10.service - PostgreSQL 10 database server
   Loaded: loaded (/usr/lib/systemd/system/postgresql-10.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2019-01-07 15:08:58 CST; 20h ago
     Docs: https://www.postgresql.org/docs/10/static/
  Process: 15371 ExecStartPre=/usr/pgsql-10/bin/postgresql-10-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
 Main PID: 15410 (postmaster)
    Tasks: 8
   Memory: 15.8M

查看PG的狀態(tài)為active running爷抓,就說明PG啟動完成势决。

修改PG的運行參數

經過上面的步驟,我們的PG Server已可以啟動蓝撇,只是還只能本機訪問果复。接下來我們對PG進行參數調整。
找到PG Data的目錄渤昌,然后修改其中的postgresql.conf.

......
listen_addresses = '*'
......

由于本例為研發(fā)測試環(huán)境虽抄,不做生成環(huán)境用,參數調整就不做詳細展開了独柑。

重啟PG迈窟。

[root@localhost ~]# systemctl restart postgresql-10

創(chuàng)建Schema和用戶

注意替換自己的數據庫用戶密碼。

bash-4.2$ psql
psql (10.6)
Type "help" for help.

postgres=# CREATE USER harbor WITH PASSWORD '******';
CREATE ROLE
postgres=# 
postgres=# CREATE DATABASE harbor OWNER harbor;
CREATE DATABASE
postgres=# GRANT ALL PRIVILEGES ON DATABASE harbor TO harbor;
GRANT
postgres=# 
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末忌栅,一起剝皮案震驚了整個濱河市车酣,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖湖员,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贫悄,死亡現場離奇詭異,居然都是意外死亡破衔,警方通過查閱死者的電腦和手機清女,發(fā)現死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來晰筛,“玉大人,你說我怎么就攤上這事拴袭《恋冢” “怎么了?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵拥刻,是天一觀的道長怜瞒。 經常有香客問我,道長般哼,這世上最難降的妖魔是什么吴汪? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮蒸眠,結果婚禮上漾橙,老公的妹妹穿的比我還像新娘。我一直安慰自己楞卡,他們只是感情好霜运,可當我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蒋腮,像睡著了一般淘捡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上池摧,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天焦除,我揣著相機與錄音,去河邊找鬼作彤。 笑死膘魄,一個胖子當著我的面吹牛,可吹牛的內容都是我干的宦棺。 我是一名探鬼主播瓣距,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼代咸!你這毒婦竟也來了射赛?” 一聲冷哼從身側響起它改,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤经窖,失蹤者是張志新(化名)和其女友劉穎腥椒,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體嚼酝,經...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了闻伶。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡够话,死狀恐怖蓝翰,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情女嘲,我是刑警寧澤畜份,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站欣尼,受9級特大地震影響爆雹,放射性物質發(fā)生泄漏。R本人自食惡果不足惜愕鼓,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一钙态、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧菇晃,春花似錦册倒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至册着,卻和暖如春拴孤,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背甲捏。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工演熟, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人司顿。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓芒粹,卻偏偏與公主長得像,于是被迫代替她去往敵國和親大溜。 傳聞我的和親對象是個殘疾皇子化漆,可洞房花燭夜當晚...
    茶點故事閱讀 44,871評論 2 354

推薦閱讀更多精彩內容

  • 安裝PostgreSQL數據庫(Linux篇) 編譯環(huán)境 Linux: CentOS 5.5 # yum inst...
    XuDongTian閱讀 1,245評論 0 6
  • pg_ctl 名稱 pg_ctl -- 啟動、停止钦奋、重啟 PostgreSQL語法 pg_ctl start [-...
    老肖閱讀 961評論 0 0
  • 客戶端安裝sudo apt-get install postgresql-client 服務器安裝sudo apt...
    代碼界的小學生閱讀 2,080評論 0 1
  • 我是爸爸媽媽的臭丫頭座云,整天懶懶散散疙赠,十分氣人,大過年朦拖,人人都高興圃阳,我卻手一松把媽媽新買的杯子弄殘了,我總是玩忘了...
    枃氼侖麼灬閱讀 352評論 0 1
  • 感恩一直被美景縈繞著璧帝,震撼著捍岳,感動著,渲染著睬隶,浸醉在美的海洋中锣夹,內心無比的柔軟平靜而愉悅。感恩這美的感覺真的是有效...
    開荒者cx閱讀 194評論 0 2