安装部署postgresql-15 高可用(pgpool)

安装部署postgresql-15 高可用(pgpool)

前言

装部署postgresql-15 高可用(pgpool)一主二从

部署环境:

centos7 x86_64
数据库版本: postgresql 15
服务器IP:
10.10.3.11
10.10.3.12
10.10.3.13
vip : 10.10.3.100

下载地址:

官网地址:
https://www.postgresql.org/download/linux/redhat/

RPM包下载:

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

安装pg15

sudo yum install -y postgresql15-server

1 创建pg15的安装目录
mkdir -p /u01/apps/pgsql15/data
赋权
chown -R postgres:postgres /u01/apps/pgsql15/
2 yum安装数据库
yum install -y postgresql15-server
yum install epel-release – 依赖
3 初始化数据库

su - postgres
/usr/pgsql-15/bin/initdb -D /u01/apps/pgsql15/data
在这里插入图片描述
4.修改服务启动脚本
用root用户修改 /usr/lib/systemd/system/postgresql-15.service 文件,将其中的PGDATA修改为新的数据目录

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

# Location of database directory
Environment=PGDATA=/u01/apps/pgsql15/data/
sed -i "/^Environment=PGDATA/cEnvironment=PGDATA=\/u01\/apps\/pgsql15\/data\/" /usr/lib/systemd/system/postgresql-15.service

打开端口

firewall-cmd --permanent --zone=public --add-service=postgresql

firewall-cmd --permanent --zone=public --add-port=5432/tcp

firewall-cmd --reload

安装pgpool

官网下载地址:
https://www.pgpool.net/yum/rpms/4.3/redhat/rhel-7-x86_64/

1 创建文件目录
mkdir -p /u01/apps/pgpool
chown -R postgres:postgres /u01/apps/pgpool/
2.yum安装 pgpool

yum localinstall *.rpm -y

配置自启

systemctl enable postgresql-15
systemctl disable pgpool.service
systemctl disable postgresql-15

配置参数

修改 postgresql.conf 文件

su - postgres 
mkdir -p /u01/apps/pgsql15/archivedir/   --归档日志目录

-- 配置允许PG远程登录,注意版本:
cat >> /u01/apps/pgsql15/data/postgresql.conf << "EOF"
listen_addresses = '*'
port=5432
logging_collector = on
log_truncate_on_rotation = on 
archive_mode = on
archive_command = 'cp "%p" "/u01/apps/pgsql15/archivedir/%f"'
max_wal_senders = 10
max_replication_slots = 10
wal_level = replica
hot_standby = on
wal_log_hints = on  
password_encryption = 'md5'

EOF

修改 pg_hba.conf文件

sed -i '$a host\tall\t\tall\t\t0.0.0.0\/0\t\tmd5' /u01/apps/pgsql15/data/pg_hba.conf
sed -i '$a host\treplication\t\all\t\t10.10.3.0\/24\t\tmd5' /u01/apps/pgsql15/data/pg_hba.conf

启动数据库
systemctl start postgresql-15

创建用户,并修改密码
psql -U postgres -p 5432
CREATE ROLE pgpool WITH LOGIN;
CREATE ROLE repl WITH REPLICATION LOGIN;
ALTER USER postgres ENCRYPTED PASSWORD ‘postgres123’;
alter user postgres with encrypted password ‘postgres123’;
alter user pgpool with encrypted password ‘postgres123’;
alter user repl with encrypted password ‘postgres123’;
GRANT pg_monitor TO pgpool;

配置互信

配置SSH,实现无密码登录效果
需要在每台服务器都配置一遍

########################root用户
cd ~/.ssh

ssh-keygen -t rsa -f id_rsa_pgpool

ssh-copy-id -i id_rsa_pgpool.pub postgres@10.10.3.11

ssh-copy-id -i id_rsa_pgpool.pub postgres@10.10.3.12

ssh-copy-id -i id_rsa_pgpool.pub postgres@10.10.3.13

#########################postgres用户
su - postgres

cd ~/.ssh

ssh-keygen -t rsa -f id_rsa_pgpool

ssh-copy-id -i id_rsa_pgpool.pub postgres@10.10.3.11

ssh-copy-id -i id_rsa_pgpool.pub postgres@10.10.3.12

ssh-copy-id -i id_rsa_pgpool.pub postgres@10.10.3.13
[root@pg1 .ssh]# su - postgres
上一次登录:五 3
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yang_z_1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值