首页主机资讯centos下pgadmin如何进行集群配置

centos下pgadmin如何进行集群配置

时间2025-10-28 18:45:04发布访客分类主机资讯浏览713
导读:CentOS下pgAdmin配置PostgreSQL集群的详细步骤 一、前置准备:安装PostgreSQL数据库集群 pgAdmin是PostgreSQL的图形化管理工具,需先搭建PostgreSQL数据库集群(主从复制),再通过pgAdm...

CentOS下pgAdmin配置PostgreSQL集群的详细步骤

一、前置准备:安装PostgreSQL数据库集群

pgAdmin是PostgreSQL的图形化管理工具,需先搭建PostgreSQL数据库集群(主从复制),再通过pgAdmin管理。以下是CentOS下的安装与配置步骤:

1. 安装PostgreSQL官方Yum存储库
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{
rhel}
    )-x86_64/pgdg-redhat-repo-latest.noarch.rpm
2. 安装PostgreSQL服务器(以15版本为例)
sudo yum install -y postgresql15-server postgresql15-devel
3. 初始化数据库并启动服务
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb  # 初始化数据库集群
sudo systemctl enable --now postgresql-15         # 开机启动并立即启动服务
4. 配置PostgreSQL监听所有IP(允许远程连接)

编辑postgresql.conf文件:

sudo vi /var/lib/pgsql/15/data/postgresql.conf

找到listen_addresses行,修改为:

listen_addresses = '*'
5. 配置客户端认证(允许pgAdmin连接)

编辑pg_hba.conf文件:

sudo vi /var/lib/pgsql/15/data/pg_hba.conf

在文件末尾添加(允许所有IP通过密码连接):

host    all             all             0.0.0.0/0               md5
6. 重启PostgreSQL服务使配置生效
sudo systemctl restart postgresql-15
7. 创建pgAdmin专用数据库用户

切换至postgres用户,执行SQL命令:

sudo -u postgres psql

psql命令行中输入:

CREATE USER pgadmin WITH PASSWORD 'YourStrongPassword123!' CREATEDB;
      -- 创建用户并允许创建数据库
GRANT ALL PRIVILEGES ON DATABASE postgres TO pgadmin;
                 -- 授权访问默认数据库
\q                                                                  -- 退出
8. 配置PostgreSQL主从复制(可选,用于高可用集群)

若需搭建高可用集群,需配置主从复制(参考PostgreSQL官方文档或pgAdmin官方指南)。

二、安装与配置pgAdmin(Web版)

pgAdmin Web版更适合远程管理集群,以下是CentOS下的安装步骤:

1. 安装pgAdmin Web组件
sudo yum install -y pgadmin4-web
2. 初始化pgAdmin配置

运行初始化脚本,设置管理员邮箱(用于找回密码)和初始密码:

sudo /usr/pgadmin4/bin/pgadmin4-web-setup.sh

按提示输入管理员邮箱(如admin@yourdomain.com)和密码(如PgAdminAdmin@123)。

3. 启动pgAdmin服务

初始化完成后,pgAdmin会自动启动。如需手动控制:

sudo systemctl start pgadmin4    # 启动服务
sudo systemctl enable pgadmin4   # 开机自启动
4. 配置Web服务器(Apache)

pgAdmin Web版依赖Apache提供HTTP服务,需调整配置以允许外部访问:

sudo cp /etc/httpd/conf.d/pgadmin4.conf.sample /etc/httpd/conf.d/pgadmin4.conf

编辑配置文件(可选):

sudo vi /etc/httpd/conf.d/pgadmin4.conf

确认以下设置:

  • 监听地址:若需远程访问,将Listen localhost:80改为Listen 80
  • 服务器名称:将ServerName localhost改为服务器公网IP或域名(如ServerName pgadmin.yourdomain.com)。

保存并退出,重启Apache服务:

sudo systemctl restart httpd
5. 配置防火墙

若系统启用了firewalld,需开放HTTP(80端口)和PostgreSQL(5432端口):

sudo firewall-cmd --permanent --add-service=http       # 开放HTTP服务
sudo firewall-cmd --permanent --add-port=5432/tcp      # 开放PostgreSQL端口
sudo firewall-cmd --reload                             # 重新加载防火墙规则
6. 访问pgAdmin Web界面

打开浏览器,输入服务器IP或域名(如http://your_server_iphttp://pgadmin.yourdomain.com),使用之前创建的pgadmin用户和密码登录。

三、通过pgAdmin添加PostgreSQL集群

登录pgAdmin后,按以下步骤添加PostgreSQL集群:

1. 点击左侧导航栏的“+”号→“Servers”→“Create”→“Server”

进入服务器配置界面。

2. 填写“General”标签页信息
  • Name:输入服务器名称(如My PostgreSQL Cluster),用于标识集群。
3. 填写“Connection”标签页信息
  • Host:输入PostgreSQL主节点的IP地址或主机名(如192.168.1.100);
  • Port:输入PostgreSQL端口(默认5432);
  • Username:输入之前创建的pgadmin用户;
  • Password:输入pgadmin用户的密码(如YourStrongPassword123!)。
4. 保存配置

点击“Save”按钮,pgAdmin将尝试连接PostgreSQL集群。若连接成功,左侧导航栏将显示集群节点,可进一步管理数据库、表等对象。

四、可选:配置pgAdmin高可用(Web访问)

若需多用户同时管理集群,可通过Docker部署多个pgAdmin实例,搭配Nginx实现负载均衡:

1. 安装Docker
sudo yum install -y docker
sudo systemctl start docker
sudo systemctl enable docker
2. 启动多个pgAdmin容器
docker run -d --name pgadmin1 -p 8080:80 \
-e "PGADMIN_DEFAULT_EMAIL=admin1@example.com" \
-e "PGADMIN_DEFAULT_PASSWORD=123456" \
dpage/pgadmin4

docker run -d --name pgadmin2 -p 8081:80 \
-e "PGADMIN_DEFAULT_EMAIL=admin2@example.com" \
-e "PGADMIN_DEFAULT_PASSWORD=123456" \
dpage/pgadmin4
3. 配置Nginx反向代理(负载均衡)

编辑Nginx配置文件(如/etc/nginx/conf.d/pgadmin.conf):

upstream pgadmin_cluster {
    
    server 127.0.0.1:8080;
    
    server 127.0.0.1:8081;

}


server {
    
    listen 80;
    
    server_name pgadmin.yourdomain.com;


    location / {
    
        proxy_pass http://pgadmin_cluster;
    
        proxy_set_header Host $host;
    
        proxy_set_header X-Real-IP $remote_addr;

    }

}
    

重启Nginx服务:

sudo systemctl restart nginx
4. 注意事项
  • pgAdmin本身无状态,需通过共享存储(如NFS)或数据库(如PostgreSQL)存储用户数据(pgadmin4.db文件),避免单点故障;
  • 生产环境中,建议关闭PostgreSQL的远程连接(修改postgresql.conf中的listen_addresseslocalhost),并通过SSH隧道访问;
  • 定期更新pgAdmin和PostgreSQL到最新版本,修复已知安全漏洞。

通过以上步骤,即可在CentOS下通过pgAdmin配置和管理PostgreSQL集群。如需更高级的高可用方案(如Patroni+etcd),可参考PostgreSQL官方文档或pgAdmin社区指南。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: centos下pgadmin如何进行集群配置
本文地址: https://pptw.com/jishu/737031.html
centos里pgadmin如何恢复数据 centos上pgadmin如何远程访问

游客 回复需填写必要信息