linux安裝postgresql三種方式【轉】

linux下安裝PostgreSQL可採用三種方式,二進制已編繹安裝包、安裝、源碼安裝三種方式進行安裝

方式1:yum安裝,建議使用這種

參看官方文檔如下地址:

sudo yum install -y

sudoyum install -y postgresql15-server

sudo /usr/pgsql-15/bin/postgresql-15-setup initdb

sudo systemctl enable postgresql-15

sudo systemctl start postgresql-15

默認postgreql 安裝在/usr/pgsql-14,數據存儲目錄:/var/lib/pgsql/版本號/data,在實際生產中/var可能存在硬盤空間不足的問題,我們一般將數據存儲目錄放在掛載的硬盤如/data下( 包括配置文件,日誌目錄都在這個目錄下)

只需要修改下啓動參數即可!

vi /usr/lib/systemd/system/postgresql-15.service

修改爲Environment=PGDATA=/data/postgresql/data #修改成新的數據庫目錄

systemctl daemon-reload #如果你是啓動的狀態下,修改的啓動參數,那麼就需要執行這個步驟,否則你關閉數據庫會報錯:Warning: postgresql-14.service changed on disk. Run 'systemctl daemon-reload' to reload units.

初始化即可完成初始化到新指定的目錄了!注意需要先關閉數據庫!前提是目錄已經創建了,可以不提前創建最後一級的子目錄,因爲初始化的時候會自動創建最後一級的子目錄!

[root@B-JS25-BASE79-00 data1]# /usr/pgsql-15/bin/postgresql-15-setup initdb

區別於源碼安裝的pgsql,源碼安裝的時候如下所示初始化直接-D指定其他目錄:如下所示

/usr/local/pgsql/bin/initdb -D /data/postgresql/data

通過systemctl 啓動pg的時候,需要找啓動文件postgresql-15.service中的Environment=PGDATA配置中的目錄,然後會找到配置文件postgresql.conf,並會讀取裏面的參數data_directory的配置的數據目錄;

1)/usr/lib/systemd/system/postgresql-15.service 文件中的Environment=PGDATA=/data/postgresql/data這個路徑, 控制初始化的路徑,並且決定啓動的時候去哪裏找配置文件postgresql.conf

2)vim /etc/postgresql/9.6/main/postgresql.conf --data_directory參數控制數據庫的數據文件目錄!

data_directory=‘/data/postgresql/datafile’

3)修改/usr/lib/systemd/system/postgresql-15.service後,建議執行reload

systemctl daemon-reload

4)數據文件的目錄需要是700或者750,否則報錯,報錯信息如下

data_directory=‘/data/postgresql/datafile’ #這個參數指定的目錄需要是700或者750權限

Nov 15 00:31:46 B-JS25-BASE79-00 postmaster[1773]: 2022-11-15 00:31:46.799 CST [1773] DETAIL: Permissions should be u=rwx (0700) or u=rwx,g=rx (0750)

5)注意:/usr/lib/systemd/system/postgresql-15.service裏面的Environment=PGDATA=/data/postgresql/data和postgresql.conf 中data_directory參數指定的路徑需要保證一樣!否則無法啓動

 

方式2:二進制已編繹安裝包,解壓即可啓動,這個好像不是官網的,感覺可下載的版本不全!

 

方式3:源碼安裝

1、下載postgresql最新版:

2、解壓文件:

tar zxvf postgresql-8.3.7.tar.gz

cd postgresql-8.3.7

3、編譯,指定安裝postgresql的路徑

./configure --prefix=/usr/local/pgsql

4、編譯:

make

5、安裝:

make install

6、創建用戶組和用戶:

groupadd postgres

useradd -g postgres postgres

7、創建數據庫庫文件存儲目錄、給postgres賦予權限:

mkdir /usr/local/pgsql/data

cd /usr/local/pgsql

chown postgres.postgres data

chmod 750 /usr/local/pgsql/data

8、編輯~/.bash_profile文件

#vi ~/.bash_profile

設置以下的環境變量,

export PGHOME=/usr/local/pgsql

export PGDATA=/usr/local/pgsql/data

PATH=$PATH:$PGHOME/bin

export PATH

9、初始化數據庫目錄:

切換用戶(root也可以)

su - postgresql

初始化數據 -D指定初始化創建的數據庫的文件路徑

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

轉自

linux安裝postgresql三種方式_ITPUB博客
http://blog.itpub.net/29654823/viewspace-2923532/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章