安裝 部署 postgresql數據庫 搭建主從節點 (業務庫)

安裝 部署 postgresql數據庫 搭建主從節點

(時序數搭建 (待更新))


操作系統
64位CentOS 7
數據庫搭建

一 業務數據庫搭建

1. 安裝 yum源(服務器可訪問互聯網時用)

yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm

2. 安裝客戶端

yum install postgresql11 –y

3. 安裝服務端

yum install postgresql11-server -y

4. 初始化數據庫

使用yum安裝後,會在系統中創建一個postgres的無密碼用戶。在主節點服務器切換到此用戶,然後創建一個數據目錄,該目錄將存放所有的配置文件、數據庫文件和日誌文件。

root # mkdir -p /u01/apps/pgsql/data
root # chown -R  postgres:postgres /u01/apps/pgsql/

PostgreSQL的安裝目錄默認存放在/usr/pgsql-11,使用下面的命令初始化數據庫目錄:
使用postgres用戶執行:錄
我放在

/usr/pgsql-11/bin/initdb -D 【數據目錄全路徑】

5. 修改服務啓動腳本

使用root用戶修改 /usr/lib/systemd/system/postgresql-11.service 文件,將其中的PGDATA修改爲新的數據目錄

vim  /usr/lib/systemd/system/postgresql-11.service

在這裏插入圖片描述

6. 修改數據庫配置

使用postgres用戶進入自行創建的數據目錄,修改 postgresql.conf 文件:
必須要修改listen_addresses、port、max_connections、log_timezone、timezone、datestyle

在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述
修改數據目錄下的 pg_hda.conf 文件,添加允許連接到本數據庫的地址:
在這裏插入圖片描述

7. 開啓防火牆端口

firewall-cmd --add-port=5432/tcp --permanent
firewall-cmd --reload

8. 啓動數據庫服務

啓動服務:systemctl start postgresql-11
停止服務:systemctl stop postgresql-11
重啓服務:systemctl restart postgresql-11

9. 修改數據庫postgres用戶密碼

修改數據庫postgres用戶密碼,使用系統的postgres用戶進入psql,執行以下命令:

[root]# su - postgres
上一次登錄:二 12月 29 13:35:56 CST 2020pts/0 上
-bash-4.2$ psql
psql (11.5)
輸入 "help" 來獲取幫助信息.
 postgres=# ALTER USER postgres ENCRYPTED PASSWORD '【密碼】';

**

二 主從熱備配置

**

1. 創建熱備用戶

啓動數據庫服務,切換至操作系統的postgres用戶,運行psql
在psql命令行中運行下面的命令創建熱備用戶,注意用戶名只能是小寫字母:

CREATE USER 【用戶名】 REPLICATION LOGIN CONNECTION LIMIT 3 ENCRYPTED PASSWORD '【密碼】';

2. 進入自行創建的數據目錄,修改 postgresql.conf 文件:

除 之前 所做的修改外,還需要修改wal_level、max_wal_senders、wal_keep_segments、hot_standby:

1
2
3

3. 修改數據目錄下的 pg_hda.conf 文件,需要添加replication的連接配置,注意此處應限制爲特定機器的連接,該配置的第三列配置爲之前創建的熱備用戶

在這裏插入圖片描述

4. 重啓主服務器的數據庫服務

在從服務器上安裝PostgreSQL,僅需要創建數據目錄,不需要初始化數據庫,使用下面的命令將主服務的數據文件同步至從服務器:

/usr/pgsql-11/bin/pg_basebackup -h 【主服務器地址】 -p 【主服務器端口】 -D 【從服務器數據目錄】 -P -U 【主服務器熱備用戶】

在從服務器上修改postgresql.conf,修改port爲從機的端口(5433)
在從服務器的數據目錄下創建一個recovery.conf文件,內容如下:

standby_mode          = 'on'
primary_conninfo      = 'host=【主服務器地址】 port=5432 user=【主服務器熱備用戶】 password=【主服務器熱備用戶密碼】'
trigger_file = '/tmp/pgsql_master'

啓動從服務器的數據庫服務

5. 在主服務器和從服務器上檢查運行是否正常

主服務器:
在這裏插入圖片描述
從服務器:
在這裏插入圖片描述
使用postgres創建主服務器,在psql下運行下列命令:
postgres=# \x on
postgres=# select * from pg_stat_activity where usename = ‘【熱備用戶名】’;
若顯示以下內容,說明已經成功搭建:






在這裏插入圖片描述
**

三 安裝插件

**
安裝所需的插件

  1. 安裝PostGIS和pgAgent
yum install postgis25_11 -y
yum install pgagent_11 -y
  1. 切換到postgres用戶,運行psql進入postgresql客戶端,在postgres數據庫中運行以下命令:
Create extension pgagent;
  1. 在postgresql客戶端中運行以下命令創建數據庫cs2:
Create database cs2;
  1. 在cs2數據庫中創建數據庫擴展
Create extension postgis;
Create extension "uuid-ossp";
Create extension "postgres_fdw"
  1. 使用root用戶啓動pgagent服務:
systemctl start pgagent_11
systemctl enable pgagent_11

主從的postgresql數據庫配置到這裏就結束了 下次再說 postgresql數據庫轉換成 timescaledb 時序庫




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