内容提要
本文介绍了在CentOS 7上安装和配置PostgreSQL 15的步骤,包括下载、安装、初始化数据库、配置监听地址、防火墙设置以及主从复制的配置。通过修改配置文件和设置用户权限,实现了PostgreSQL的主从复制功能。
关键要点
-
在CentOS 7上安装PostgreSQL 15的步骤包括下载、安装和初始化数据库。
-
使用命令sudo yum install -y postgresql15-server安装PostgreSQL 15,并通过sudo /usr/pgsql-15/bin/postgresql-15-setup initdb初始化数据库。
-
配置PostgreSQL监听地址,通过修改postgresql.conf文件中的listen_addresses = '*'来允许所有IP连接。
-
防火墙设置需要开放5432端口,使用firewall-cmd命令进行配置。
-
主从复制配置中,创建角色replica并设置相关权限,修改postgresql.conf和pg_hba.conf文件以支持流复制。
-
从库的设置包括停止服务、清空数据目录、使用pg_basebackup命令从主库备份数据,并设置必要的权限。
-
在从库的postgresql.conf中配置主库信息和连接用户,重启数据库以完成主从配置搭建。
延伸解读
安装过程中的常见问题
在安装PostgreSQL 15时,可能会遇到依赖库缺失的问题,例如libzstd.so.1。解决此问题的方法是先安装epel-release包,这样可以确保所有必要的依赖项都能正确安装。
主从复制配置的注意事项
在配置主从复制时,确保在主库和从库的配置文件中正确设置监听地址和权限。特别是pg_hba.conf文件中的设置,必须允许从库的连接请求,否则会导致复制失败。
防火墙设置的重要性
在CentOS 7上,防火墙设置对PostgreSQL的正常运行至关重要。确保5432端口开放,并且PostgreSQL服务已被添加到防火墙规则中,以避免连接问题。
延伸问答
如何在CentOS 7上安装PostgreSQL 15?
使用命令sudo yum install -y postgresql15-server进行安装,并通过sudo /usr/pgsql-15/bin/postgresql-15-setup initdb初始化数据库。
如何配置PostgreSQL的监听地址?
在postgresql.conf文件中,将listen_addresses设置为'*',然后重启PostgreSQL服务。
在PostgreSQL中如何设置主从复制?
创建角色replica并设置权限,修改postgresql.conf和pg_hba.conf文件以支持流复制,然后在从库使用pg_basebackup命令备份数据。
如何解决PostgreSQL连接被拒绝的问题?
确保PostgreSQL服务正在运行,并检查防火墙是否开放5432端口,以及postgresql.conf中的listen_addresses设置是否正确。
在PostgreSQL中如何修改用户权限?
使用ALTER USER命令修改用户密码,例如:ALTER USER postgres WITH PASSWORD '新密码';
如何在从库中配置主库信息?
在从库的postgresql.conf中配置primary_conninfo,指定主库的IP地址和连接用户信息。