terra · 0 依赖 1 个文件的 web 数据库管理工具

轻量数据库 Web 管理工具:一个文件即可部署,打开浏览器就能用。统一管理 MySQL、PostgreSQL(兼容 Kingbase)与 Redis,内置可视化表格编辑、SQL 编辑器、Redis 控制台与执行日志。

MySQL PostgreSQL Kingbase 兼容 Redis 一个文件部署 浏览器即用

支持的数据库

连接管理、凭据存储与会话鉴权统一起来;每一种数据库都能浏览结构、查看与编辑数据,体验一致。

MySQLgo-sql-driver

  • 库、表、视图树形浏览与结构查看
  • 分页数据编辑:行内右键增删改,复制为 JSON / INSERT
  • 列清单与 SHOW CREATE TABLE 原文 DDL 直出

PostgreSQL / Kingbasepgx/v5

  • 模式层级、物化视图等完整元数据
  • 按 pg_catalog 重建建表语句与视图定义
  • 同样的分页浏览、排序筛选与行级编辑
兼容人大金仓 KingbaseES

Redisgo-redis/v9

  • db 列表与 key 数量一目了然
  • SCAN 按 pattern 浏览、游标翻页
  • string / hash / list / set / zset 可视化读写,附任意命令控制台
即时体验 terra 登录密码 terra-demo https://terra-demo.circle-tech.cn 在新窗口打开 ↗

这里嵌入的是 terra 的在线演示站(terra-demo.circle-tech.cn),可以直接在里面登录、浏览数据;若这里一直空白,说明该站点不允许被页面嵌入(X-Frame-Options / CSP),请用右上角链接在新窗口打开。

快速开始

# 解压,一条命令装好
$ unzip terra-setup-linux-x64.20261029-205848.zip
$ sudo ./terra-setup install
installed to /opt/terra, starts on boot
# 浏览器打开就能用 http://your-server:8888
1

装到服务器

解压后跑一条命令:装到 /opt/terra、开机自启,立刻可用。

unzip terra-setup-linux-x64.20261029-205848.zip
chmod +x terra-setup && sudo ./terra-setup install  # 装到 /opt/terra,开机自启
2

打开浏览器,设置登录密码

浏览器打开下面这个地址,首次进入会让你设置登录密码,设完直接进主界面。

http://your-server:8888  # 换成你的服务器地址
3

新建连接,开始用

点「新建连接」填上地址与账号密码就能开工:浏览和修改数据、写 SQL 语句、管 Redis。

# 例如连一台 PostgreSQL
类型 PostgreSQL    主机 db.internal    端口 5432
库 app_db          用户 readonly      密码 ******
# 解压后直接运行
> terra.exe
config created → config\main.toml
# 浏览器打开就能用 http://localhost:8888
1

解压就能跑

没有安装环节:双击解压出来的 terra.exe 即可,配置文件首次运行自动生成。

terra.exe  # 双击运行即可
2

打开浏览器,设置登录密码

浏览器打开下面这个地址,首次进入会让你设置登录密码,设完直接进主界面。

http://localhost:8888  # 程序就跑在这台机器上
3

新建连接,开始用

点「新建连接」填上地址与账号密码就能开工:浏览和修改数据、写 SQL 语句、管 Redis。

# 例如连一台 PostgreSQL
类型 PostgreSQL    主机 db.internal    端口 5432
库 app_db          用户 readonly      密码 ******

为什么轻量,为什么好用

用 Go 语言写成:仅 1 个文件,不用装运行时、不用配环境,MySQL、PostgreSQL 与 Redis 全都完美支持。

01

一个文件即可部署

前端产物由 go:embed 直接打进单个静态二进制:没有 Node 运行时、没有外部静态目录;体积小、常驻内存低,复制一个文件就能跑,升级也只是换个文件再重启。

02

打开浏览器就能用

纯 B/S 架构,客户端零安装:团队成员不需要在每台电脑上装专门的数据库工具,有一个浏览器、一次登录就能连上所有已配置的数据源。

03

三种数据库统一管理

MySQL、PostgreSQL(兼容人大金仓 KingbaseES)与 Redis 共用一套界面、一次登录与统一的凭据存储;连接探活、结构浏览、数据编辑与执行日志的体验完全一致。

功能一览

左侧树、中部数据、底部日志 —— 常用数据库操作不需要离开这一个页面。

☰树形结构导航

连接 → 库 → 模式 → 表逐层懒加载,节点右键直达常用操作;连接旁的状态圆点实时反映探活结果(灰/绿/红)。

▦可视化数据编辑

分页浏览、字段排序、条件筛选;表格内右键即可新增/编辑/删除行,还能复制整行为 JSON 或 INSERT 语句。

⌨SQL 编辑器

支持执行任意语句,Ctrl/Cmd + Enter 快捷执行;结果自动在新标签页展开,受 allow_write_sql 开关保护。

✎表结构与 DDL

查看列清单、主键、默认值与注释;DDL 标签惰性加载,MySQL 直接取 SHOW CREATE 原文,PostgreSQL 从元数据重建。

◫多标签工作区

顶级标签按连接分组,一个连接下可并列打开多张表;关闭的内容留在会话缓存,重开瞬时恢复不发请求。

◎执行日志面板

每一笔打到数据源的请求都记录动作、语句、耗时与影响行数;连接管理与探活刻意不入日志,避免刷屏。

🛡️方言层注入防护

标识符统一经 Quote() 引用、值走占位符,写操作前先校验列名与排序字段;超大整数主键转为字符串回传,避免精度丢失。

◐亮 / 暗主题

一键切换,偏好记忆在本地,首屏不闪白;全站配色收敛在一套 CSS 变量里,易于定制品牌色。

常见问题

安装方式、支持范围与安全边界,挑最常被问到的几条写在这里。

terra 是什么?
terra 是一个轻量的数据库 Web 管理工具:一个静态文件即可部署,打开浏览器就能统一管理 MySQL、PostgreSQL 与 Redis。它把连接管理、结构浏览、数据编辑、SQL 执行与执行日志收在同一个页面里,面向内网与本机的日常运维。
terra 支持哪些数据库?
MySQL、PostgreSQL 与 Redis 三类。PostgreSQL 走 pgx/v5,同时兼容人大金仓 KingbaseES;MySQL 与 Redis 分别用 go-sql-driver 与 go-redis/v9。
需要先安装 Node.js、Java 或数据库客户端吗?
都不需要。前端产物由 go:embed 直接打进同一个 Go 二进制,运行时没有额外运行时、静态目录或配置文件依赖,复制一个文件就能启动。
怎么用浏览器管理 MySQL 或 PostgreSQL 数据库?
打开服务地址(默认 8888 端口),设好登录密码后新建连接,填上主机、端口、库与账号密码即可:左侧树浏览库表结构,右侧查看与编辑数据、执行 SQL。
Linux 上怎么安装并开机自启?
解压安装包后执行 sudo ./terra-setup install:程序复制到 /opt/terra、配置写进 config/main.toml,并注册 systemd 服务随系统启动;卸载用 terra-setup uninstall。
连接密码保存在哪里?
保存在服务端 SQLite(data_dir 下的 terra.db)里,明文存储、仅服务端使用;接口只返回 has_password 标记,不回传密码。建议把该文件权限收成 600,按内网或本机环境使用。
能限制写操作吗?
可以。把配置里的 allow_write_sql 设为 false,SQL 编辑器里的写操作会被拒绝;表数据的行级增删改仍按连接本身的权限来。
没有主键的表能修改吗?
不能,只能查看。行级增删改依赖主键定位目标行,所以视图与无主键表在界面里是只读的。