pgweb PostgreSQL 网页管理工具教程:三步拉起数据库浏览器
2026/8/22 18:30:46 网站建设 项目流程

pgweb PostgreSQL 网页管理工具教程:三步拉起数据库浏览器

【免费下载链接】pgwebCross-platform client for PostgreSQL databases项目地址: https://gitcode.com/gh_mirrors/pg/pgweb

pgweb 是一个用 Go 编写的轻量 PostgreSQL 网页数据库管理工具,单个二进制、零依赖,启动后就能在浏览器里浏览表结构和执行 SQL 查询。本文带你完成本地安装、启动验证和核心界面操作。

它解决什么问题

连接 PostgreSQL 数据库,过去要么开 psql 命令行,要么装一个功能庞杂的桌面客户端;想把库的状态给同事看一眼就更麻烦了。pgweb 替代的正是这些操作:一个二进制文件,Mac、Linux、Windows 通吃,支持多数据库会话并行、SSH 隧道直连远程库、查询结果导出 CSV/JSON/XML,兼容 PostgreSQL 9.6+。适合经常和 PostgreSQL 打交道的开发者,以及想给团队快速搭一个浏览器入口的运维人员。

🚀 三步跑起来

1. 确认环境

准备一个可连的 PostgreSQL 9.6+ 实例即可。若选择源码编译,需要本机装有 Go(go.mod 声明要求 Go 1.25);用 Docker 或官方预编译二进制则无额外要求。

2. 安装

下面这段命令拉取源码并编译出可执行文件,产物放在当前目录:

git clone https://gitcode.com/gh_mirrors/pg/pgweb cd pgweb make build

不想编译也行:项目自带 Dockerfile,跑一次make docker && make docker-run就能得到等效的服务。

3. 启动并验证成功

下面这条命令以默认数据库连接信息启动服务,主机、用户、库名都可以按需替换:

./pgweb --host localhost --user myuser --db mydb

成功的标志:浏览器打开http://localhost:8081(启动时 pgweb 会自动弹出浏览器),看到一个白底连接表单,填好账号点 Connect 就能进入数据库。

🖥️ 核心界面与操作

第一屏:连接数据库

连接表单依次是 Host、Username、Password、Database、Port(默认 5432)和 SSL 模式。如果启动时加了--sessions参数,左上角会出现 Bookmark 下拉框,可以在多个已保存的连接之间切换,不用反复重启。表单同样支持 SSH 隧道方式,适合连跳板机后面的库。

浏览表和数据

连接成功后,左侧是按 schema 分组的表树。点进任意一张表,顶部标签可在 Rows、Structure、Indexes、Constraints 之间切换;数据区支持按列筛选、关键词搜索和翻页,左下角还能看到表大小与预估行数。

写查询、导结果

切到 SQL Query 标签页就是带语法高亮的编辑器,写完点 Run Query 执行,或点 Explain Query 看执行计划。结果右上角可一键导出 CSV、JSON、XML;History 标签页保留完整查询历史,回头翻旧 SQL 很方便。

⚙️ 关键配置速查

配置项作用默认值什么时候需要改
--listenWeb 服务监听端口8081端口被占用或想换访问地址时
--bind服务绑定主机localhost需要让其他机器访问时
--host / --user / --db默认数据库连接信息localhost / 系统用户名 / 空希望启动即固定连某个库时
--url一行式连接串(含账号、SSL 模式)连接参数较多、想避免拼错时
--auth-user / --auth-pass登录页 Basic 认证账号密码不启用把服务暴露到网络前必配
--sessions允许多个数据库会话并行同时管理多个库时
--readonly连接锁为只读分享给他人、防止误写时
--prefixURL 路径前缀挂在反向代理后面时

以上参数都可用PGWEB_前缀的环境变量替代,例如PGWEB_SESSIONS=1

🛠️ 常见坑与排查

端口 8081 被占用启动日志会提示监听端口已被使用。加--listen 9000换个端口,或找到占用 8081 的进程停掉。

连接被拒绝或认证失败多半是主机、用户或 SSL 模式与数据库端不一致:SSL 设为 require 却连未开加密的实例必挂,本地调试可先改成 disable;参数多时用--url一行式写法能减少逐项拼错。

不指定用户启动,连接反而失败不传--user时 pgweb 会拿当前系统用户名去连,数据库里没有同名角色就直接失败,显式传--user即可解决。

注意:默认页面没有任何登录校验,能访问到端口的人就能操作数据库。把 pgweb 暴露到网络时,务必配上--auth-user/--auth-pass并限制--bind的可见范围。

写在最后

三步之后,你的 PostgreSQL 就住进了浏览器,而且不用操心任何依赖。完整功能清单见 README.md,全部界面截图见 SCREENS.md,连接书签和系统服务脚本等参考素材在 config/ 目录。

【免费下载链接】pgwebCross-platform client for PostgreSQL databases项目地址: https://gitcode.com/gh_mirrors/pg/pgweb

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询