Centos7安装PostgreSQL14并配置主从复制

主服务器(读写)    192.168.10.88
从服务器(读)    192.168.10.87


PostgreSQL14安装
无特别说明,只需要在主数据库安装PG即可。

安装rpm文件(主从)

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


安装PostgreSQL(主从)

sudo yum install -y postgresql14-server


初始化数

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


设备开机启动(主从)

sudo systemctl enable postgresql-14


启动PostgreSQL服务

sudo systemctl start postgresql-14


设置数据库密码
数据库安装后,默认创建账号postgres

使用postgres账号身份操作

su - postgres


使用postgres账号登录数据库
psql -U postgres
设置密码

psql -U postgres 
set password_encryption TO 'md5';  
pg14密码规则默认不是md5了  显式设置一下

alter user postgres with password '123456';


退出

\q    #退出数据库
exit  #退出postgres账号


开启远程访问
对所有IP开放访问,打开postgresql.conf文件

vi /var/lib/pgsql/14/data/postgresql.conf


修改listen_address配置(对所有IP开发访问),设置wal_level,并放开port。

listen_addresses = '*'
wal_level = replica


增加信任连接,打开pg_hba.conf文件

vi /var/lib/pgsql/14/data/pg_hba.conf
增加从数据库连接配置(192.168.10.87为从数据库ip)
# IPv4 local connections:
#增加允许连接的ip
host    all             all             0.0.0.0/0                 md5
 
# replication privilege.
local   replication     all                                     peer
host    replication     repl            192.168.10.87/32        md5


重启服务

systemctl restart postgresql-14


主服务器创建主从同步账号
# 切换用户

su - postgres


# 创建同步账号

create role repl login replication encrypted password 'repl';


 从数据库设置同步
# 切换用户

su - postgres


# 和主数据库同步

pg_basebackup -h 192.168.10.88 -p 5432 -U repl -R -F p -P -D /var/lib/pgsql/14/data


# 输入同步账号密码 repl
启动从数据库

systemctl start postgresql-14


此时,主从数据库已经搭建完成,用户名和密码均为 postgres/123456,端口均为5432。
 

你可能感兴趣的:(devops,postgresql,数据库,linux)