温馨提示×

CentOS下PgAdmin怎么设置

小樊
36
2026-07-20 19:54:22
栏目: 智能运维

下面分 CentOS 7 / 8 / Stream 常见情况说明 PgAdmin 4 的安装与基本设置。目前 PgAdmin 3 已停止维护,建议直接使用 PgAdmin 4(Web 模式)


一、环境准备

1. 安装 PostgreSQL(如果还没装)

# CentOS 7 示例
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql14-server postgresql14-contrib
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
sudo systemctl enable --now postgresql-14

版本号可按需改为 13 / 15 等


二、安装 PgAdmin 4(Web 模式,推荐)

方式一:通过 PostgreSQL 官方仓库(推荐)

sudo yum install -y pgadmin4

安装完成后,一般包括:

  • Web 模式:pgadmin4-web
  • Apache 配置:/etc/httpd/conf.d/pgadmin4.conf

三、PgAdmin 4 Web 模式配置

1. 创建配置目录

sudo mkdir -p /var/lib/pgadmin4
sudo mkdir -p /var/log/pgadmin4

2. 设置权限

sudo chown -R apache:apache /var/lib/pgadmin4
sudo chown -R apache:apache /var/log/pgadmin4

3. 创建 PgAdmin 配置文件

sudo vi /etc/pgadmin4/config_local.py

内容示例:

SERVER_MODE = True
LOG_FILE = '/var/log/pgadmin4/pgadmin4.log'
SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db'
SESSION_DB_PATH = '/var/lib/pgadmin4/sessions'
STORAGE_DIR = '/var/lib/pgadmin4/storage'

4. 初始化 PgAdmin

sudo python3 /usr/lib/python3.*/site-packages/pgadmin4/setup.py

按提示设置:

  • 管理员邮箱
  • 管理员密码

5. 配置 Apache(如未自动配置)

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

示例:

WSGIScriptAlias /pgadmin4 /usr/lib/python3.*/site-packages/pgadmin4/pgadmin4.wsgi

<Directory /usr/lib/python3.*/site-packages/pgadmin4>
    Require all granted
</Directory>

6. 启动 Apache

sudo systemctl enable --now httpd
sudo systemctl restart httpd

四、防火墙设置

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

五、浏览器访问

http://服务器IP/pgadmin4

使用刚才设置的管理员账号登录。


六、连接 PostgreSQL 数据库

  1. 登录 PgAdmin
  2. Add New Server
  3. 填写:
    • Name:任意
    • Hostlocalhost 或数据库 IP
    • Port5432
    • Usernamepostgres
    • Password:PostgreSQL 密码

⚠️ 如果连接失败,检查:

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

确保有:

host  all  all  127.0.0.1/32  md5

然后:

sudo systemctl restart postgresql-14

七、常见问题

1. 403 Forbidden

  • 检查 SELinux
sudo setenforce 0   # 临时关闭测试

长期解决:

sudo setsebool -P httpd_can_network_connect_db 1

2. 中文乱码

PgAdmin 支持中文,浏览器语言设置为中文即可。


八、总结

✅ 推荐方案:
CentOS + PostgreSQL + PgAdmin 4(Web 模式 + Apache)

如果你需要:

  • PgAdmin 桌面版
  • Docker 方式
  • CentOS Stream 9
  • HTTPS + Nginx

可以直接告诉我你的具体环境,我可以给你定制步骤。

0