← 全部项目

Tacivan

快速的 macOS 数据库客户端

唐艺家 (Tom)

类别
Mac 应用
平台
macOS 13+
版本
0.1.0
大小
22 MB
许可
MIT
语言
中文 · EN

一个快的、开源的 macOS 数据库客户端,给整天泡在 MySQL 里的人。百万行结果流式加载不卡死;Go + 系统 WebView,不是 Electron,不用注册账号,没有埋点。

网页演示虚拟滚动结果表格
网页演示连接树、标签页与 SQL 编辑器

在浏览器里试试

下面是 Tacivan 主窗口的浏览器复刻版。查询是真的在执行:SQLite 编译成 WebAssembly,库是页面加载时在你浏览器里生成的一家虚构书店。local-mysql 和 cache-redis 是模拟连接,能展开浏览、不能查询。不会向任何地方发送数据。

试试这些查询:
Tacivan
main ⌘/Ctrl + Enter 运行选中部分,没选就全部运行

流式结果集,停止按钮真的能停

在 Tacivan 里结果集是游标,不是数组。数据经分块缓存流进来,整个进程共用一份内存预算, 看不到的分块落盘,所以同时开好几个百万行的标签页也装得下;一个标签页里的慢读取不会拖住另一个。 每个耗时操作都显示当前步骤和耗时,停止按钮会取消驱动层的上下文,打断阻塞中的网络读取,而不是只把转圈藏起来。

演示版模仿的是看得见的那部分:按时间片取行,网格只渲染屏幕上的那些行,停止在两个时间片之间生效。 演示版把数据全放在内存里,到 50 万行就停;真实软件没有这个上限,因为它会落盘。

专为又大又老的 MySQL

元数据全部走 SHOW … 语句,不碰 information_schema(在 MySQL 5.7 上那是临时表扫描)。 3165 个库的实例一个往返就能列出来;也可以给连接指定只显示哪些库。

插件和 MCP server 都是连接

插件是一个独立进程,用任何语言写,通过 stdin/stdout 上按行分隔的 JSON-RPC 2.0 通信。 一个插件就是一种新的连接类型:自己的表单字段、对象树和右键动作;SQL 编辑器、数据网格、筛选、全库搜索、导出照常可用。 插件声明的规则(selectOnly、singleStatement、forceLimit、denyPatterns) 由主程序在 SQL 交给插件之前强制执行,只读插件根本没有写入路径。插件从「设置」里导入,不会进发布包。

MCP server(stdio 或 Streamable HTTP)也是连接:树上列出它的工具和资源,工具按 JSON Schema 生成的表单调用, 长得像表的结果直接进同一个网格。不接大模型,每一次调用都是你按下去的。

隐私

没有埋点、没有崩溃上报、不检查更新、不用账号。软件只和你配置的数据库主机、插件进程、MCP server 通信。 密码存在 macOS 钥匙串,其余都是 ~/Library/Application Support/Tacivan/ 下的普通 JSON。 MIT 协议,macOS 13 及以上,通用二进制。