CentOS系统配置pgAdmin详细步骤
pgAdmin是PostgreSQL的图形化管理工具,需先安装PostgreSQL作为后端数据库。
安装PostgreSQL官方Yum存储库(适用于CentOS 7/8/9):
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-$(rpm -E %{rhel})-x86_64/pgdg-redhat-repo-latest.noarch.rpm
安装PostgreSQL服务器(以PostgreSQL 15为例):
sudo yum install -y postgresql15-server postgresql15-devel
初始化数据库并启动服务:
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb # 初始化数据库集群
sudo systemctl enable --now postgresql-15 # 开机启动并立即启动服务
创建pgAdmin专用数据库用户(用于登录pgAdmin):
切换至postgres
用户,执行SQL命令创建用户(如pgadmin
)并授权:
sudo -u postgres psql
CREATE USER pgadmin WITH PASSWORD 'YourStrongPassword123!' CREATEDB; # 创建用户并允许创建数据库
GRANT ALL PRIVILEGES ON DATABASE postgres TO pgadmin; # 授权访问默认数据库
\q # 退出psql
pgAdmin支持桌面版和Web版,Web版更适合远程管理,以下是安装步骤:
安装pgAdmin Web组件:
sudo yum install -y pgadmin4-web
初始化pgAdmin配置:
运行初始化脚本,设置管理员邮箱(用于找回密码)和初始密码:
sudo /usr/pgadmin4/bin/pgadmin4-web-setup.sh
按提示输入管理员邮箱(如admin@yourdomain.com
)和密码(如PgAdminAdmin@123
)。
启动pgAdmin服务:
初始化完成后,pgAdmin会自动启动。如需手动控制,可使用以下命令:
sudo systemctl start pgadmin4 # 启动服务
sudo systemctl enable pgadmin4 # 开机自启动
pgAdmin Web版依赖Apache提供HTTP服务,需调整配置以允许外部访问:
复制默认配置文件:
sudo cp /etc/httpd/conf.d/pgadmin4.conf.sample /etc/httpd/conf.d/pgadmin4.conf
修改配置文件(可选):
用文本编辑器(如vi
)打开配置文件,确认以下设置:
Listen localhost:80
改为Listen 80
;ServerName localhost
改为服务器公网IP或域名(如ServerName pgadmin.yourdomain.com
)。重启Apache服务:
sudo systemctl restart httpd
若系统启用了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 # 重新加载防火墙规则
http://your_server_ip
或http://pgadmin.yourdomain.com
)。pgadmin
/YourStrongPassword123!”
),点击“登录”。My PostgreSQL Server
);localhost
(若pgAdmin与PostgreSQL在同一服务器)或PostgreSQL服务器IP;5432
(默认端口);pgadmin
(之前创建的数据库用户);YourStrongPassword123!”
(用户密码)。若系统已安装Docker,可通过容器快速部署pgAdmin(无需配置Apache):
sudo yum install -y docker
sudo systemctl start docker
sudo systemctl enable docker
docker pull dpage/pgadmin4
docker run -p 5050:80 \
-e "PGADMIN_DEFAULT_EMAIL=admin@pgadmin.com" \
-e "PGADMIN_DEFAULT_PASSWORD=admin123" \
-d dpage/pgadmin4
http://your_server_ip:5050
,使用admin@pgadmin.com
/admin123
登录。postgresql.conf
中的listen_addresses
为localhost
),并通过SSH隧道访问。sudo setsebool -P httpd_can_network_connect_db 1
以上步骤覆盖了CentOS系统下pgAdmin的主要配置流程,可根据实际需求调整(如修改端口、配置HTTPS等)。