Shield CLI v0.3.3 新增 PostgreSQL 插件:浏览器里管理 PG 数据库

前两天发了 MySQL 插件,现在 PostgreSQL 也跟上了。同样的思路------一条命令装好,浏览器打开就能用,不需要在对方机器上装任何客户端。


一条命令安装

bash 复制代码
shield plugin add postgres

验证:

bash 复制代码
shield plugin list
# NAME      VERSION  PROTOCOLS              INSTALLED
# postgres  v0.1.0   postgres, pg, postgresql  2026-03-25T10:00:00+08:00

前提是主程序升级到 v0.3.3+:

bash 复制代码
brew update && brew upgrade shield-cli
# 或
curl -fsSL https://cdn.jsdelivr.net/gh/fengyily/shield-cli@main/install.sh | sh

使用方式

Web UI(推荐)

bash 复制代码
shield start

http://localhost:8181 添加好 postgres 插件

http://localhost:8181 添加应用,Protocol 选 postgres,填好地址、用户名、密码,点连接。

命令行

bash 复制代码
# 连接远程 PostgreSQL
shield postgres 10.0.0.5:5432 --db-user postgres --db-pass mypass --database mydb

# 只读模式
shield postgres 10.0.0.5:5432 --db-user postgres --readonly

不传凭证会交互式提示输入。pgpostgresql 是别名,效果一样:

bash 复制代码
shield pg 10.0.0.5:5432

Web 界面功能

连接成功后浏览器自动打开 Web SQL 客户端,界面和 MySQL 插件类似,但针对 PostgreSQL 做了适配:

Schema 树形浏览

PostgreSQL 按 Schema 组织,不像 MySQL 按 Database 切换。左侧栏展示 Schema → Table → Column/Index 三级树结构,支持搜索过滤。

SQL 编辑器

  • 多标签页,Ctrl+Enter 执行
  • 结果排序、CSV 导出、单元格复制
  • 双击单元格查看完整内容(长文本、JSONB 友好)

表结构管理

  • 查看字段类型、默认值、约束
  • 可视化创建表(支持 PG 类型:SERIALBIGSERIALTIMESTAMPTZJSONBUUIDINET 等)
  • 创建/删除索引
  • 添加/删除字段
  • 创建/删除 Schema

行级操作

  • 插入记录
  • 编辑单元格(双击)
  • 删除行(带确认)

只读模式

和 MySQL 插件一样,只读/读写由启动方控制。只读模式下 INSERT、UPDATE、DELETE、DROP、ALTER、CREATE 等写操作被前后端双重拦截,远程用户无法绕过。


和 MySQL 插件的区别

两个插件功能结构一致,但在 SQL 层面做了完整的 PostgreSQL 适配:

MySQL 插件 PostgreSQL 插件
组织方式 Database → Table Schema → Table
标识符引用 反引号 ````` 双引号 "
自增类型 AUTO_INCREMENT SERIAL / BIGSERIAL
元数据查询 SHOW 命令 information_schema
特有类型 --- JSONBUUIDINETTIMESTAMPTZ

插件源码独立维护

PostgreSQL 插件的代码不在 Shield CLI 主仓库里,而是放在独立的插件 monorepo:

github.com/fengyily/shield-plugins

后续 Redis、SQL Server 等插件也会放在这里。每个插件是独立的 Go module,互不依赖,CI 自动检测哪个插件有改动就构建哪个。


实际场景

临时给同事查 PG 数据

同事需要查几条数据,但他那台机器上没有 pgAdmin 也没有 DBeaver:

bash 复制代码
shield postgres 192.168.1.100:5432 --db-user readonly --readonly

把链接发给他,浏览器打开就能查。用完断开。

排查线上 Schema 结构

生产环境的 PG 不方便直连,通过 Shield 建立加密隧道,只读模式浏览 Schema、表结构和索引:

bash 复制代码
shield postgres prod-db.internal:5432 --db-user ops --readonly --invisible

--invisible 隐身模式需要授权码才能访问,防止链接泄露。

Docker 里的 PG

bash 复制代码
docker run -d -p 5432:5432 -e POSTGRES_PASSWORD=postgres postgres:16
shield postgres 127.0.0.1:5432 --db-user postgres --db-pass postgres

当前插件状态

插件 状态
mysql ✅ 已发布
postgres ✅ 已发布
redis 计划中
sqlserver 计划中

试一下

bash 复制代码
# 安装/升级 Shield CLI
brew tap fengyily/tap
brew install shield-cli
# 或
curl -fsSL https://cdn.jsdelivr.net/gh/fengyily/shield-cli@main/install.sh | sh

# 安装 PostgreSQL 插件
shield plugin add postgres

# 连接
shield postgres 127.0.0.1:5432 --db-user postgres

开源地址:https://github.com/fengyily/shield-cli

插件仓库:https://github.com/fengyily/shield-plugins

文档地址:https://docs.yishield.com

有问题或建议欢迎提 Issue

相关推荐
星恒讯工业路由器2 小时前
5G FWA技术演进与趋势
网络·5g·信息与通信·4g·5g fwa·3gpp规范·fwa趋势
BullSmall3 小时前
Anolis OS 8.10 完整安装 Docker CE(生产可用,解决 podman 冲突)
docker·容器·podman
用户095367515834 小时前
在系统的学习 redis 前的疑惑
redis·go
星夜夏空994 小时前
网络编程(1)
服务器·网络
上海云盾-小余5 小时前
中小站点防护避坑:低价高防服务存在的各类安全短板剖析
网络·爬虫·安全·ddos
梦梦代码精6 小时前
开源AI应用平台BuildingAI解析:插件化架构、应用市场与热门案例
人工智能·机器学习·docker·开源
X7x57 小时前
跨厂商路由引入(重发布)实战指南:华为、华三、思科的逻辑差异与配置避坑
网络协议·信息与通信·信号处理·实施路由引入
数据知道7 小时前
邮件安全实战:SPF/DKIM/DMARC 配置与钓鱼绕过
网络·安全·web安全·网络安全·邮件安全
玩转4G物联网7 小时前
FS800DTU 新品上线|免费使用 DMP 设备管理平台,支持远程批量配置 & OTA 升级
物联网·网络协议·tcp/ip·云平台·核心板·fs800dtu·iot管理平台
王莎莎-MinerU7 小时前
MCP 解决的是工具接入,科研 Agent 还缺的是科学证据接口标准化
开发语言·网络·人工智能·深度学习·pdf·c#·php