clidey/whodb

GitHub: clidey/whodb

一款轻量级现代数据库管理工具,支持多种数据库类型,提供可视化数据管理、AI 驱动的自然语言查询和交互式 Schema 浏览功能。

Stars: 4809 | Forks: 205

# WhoDB ### *轻量、快速且美观的数据库管理工具* ![Release workflow](https://img.shields.io/github/actions/workflow/status/clidey/whodb/release-ce.yml?branch=main) ![release version](https://img.shields.io/github/v/release/clidey/whodb) ![release date](https://img.shields.io/github/release-date/clidey/whodb) ![docker pulls](https://img.shields.io/docker/pulls/clidey/whodb) ![release downloads](https://img.shields.io/github/downloads/clidey/whodb/total) ![docker size](https://img.shields.io/docker/image-size/clidey/whodb/latest) ![Commits per month](https://img.shields.io/github/commit-activity/m/clidey/whodb) ![last commit](https://img.shields.io/github/last-commit/clidey/whodb) ![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg) ![contributors](https://img.shields.io/github/contributors/clidey/whodb) ![closed issues](https://img.shields.io/github/issues-closed/clidey/whodb) ![closed PRs](https://img.shields.io/github/issues-pr-closed/clidey/whodb) [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE) [![GitHub Stars](https://img.shields.io/github/stars/clidey/whodb?style=social)](https://github.com/clidey/whodb/stargazers) ![Go](https://img.shields.io/badge/language-Go-00ADD8?logo=go&logoColor=white) ![TypeScript](https://img.shields.io/badge/language-TypeScript-3178c6?logo=typescript&logoColor=white) [![Go Report Card](https://goreportcard.com/badge/github.com/clidey/whodb/core)](https://goreportcard.com/report/github.com/clidey/whodb/core) ## 可用平台 [![Docker](https://img.shields.io/badge/Docker-available-brightgreen)](https://hub.docker.com/repository/docker/clidey/whodb) [![Windows](https://img.shields.io/badge/Windows-available-brightgreen)](https://apps.microsoft.com/detail/9pftx5bv4ds6) [![macOS](https://img.shields.io/badge/macOS-available-brightgreen)](https://apps.apple.com/app/whodb/id6754566536) [![Snap](https://img.shields.io/badge/Snap-available-brightgreen)](http://snapcraft.io/whodb) [![CLI](https://img.shields.io/badge/CLI-available-brightgreen)](./cli/README.md) [🚀 快速开始](#quick-start) • [📖 文档](https://docs.whodb.com/) • [🎮 在线演示](https://demo.whodb.com/login?host=quick-container-491288b0-3138-48fa-93b4-1e730296c0b7.hello.svc.cluster.local&username=user&password=password&database=Adventureworks) • [💬 社区](https://github.com/clidey/whodb/discussions)

WhoDB Interface

## 🎯 什么是 WhoDB? **WhoDB 是开发者真正想用的现代数据库管理工具。** WhoDB 使用 GoLang 和 React 构建,是一款轻量级(<50MB)但功能强大的数据库客户端,将极致的性能与直观、美观的界面相结合。无论您是在调试生产环境问题、探索新的数据库 schema,还是为下一个功能管理数据,WhoDB 都能让数据库管理变得轻松自如。 ### 为什么选择 WhoDB?
**🚀 闪电般的速度** - 瞬间启动(<1s) - 实时查询结果 - 高效的表格虚拟化 - 比传统工具减少 90% 的资源占用 **🎨 美观且直观** - 简洁、现代的界面 - 类电子表格的数据网格 - 交互式 schema 可视化 - 无需培训即可上手 **🤖 AI 驱动** - 自然语言转 SQL - 以对话形式与您的数据交流 - 支持 Ollama、OpenAI、Anthropic 以及任何兼容 OpenAI 的提供商 - 无需编写复杂的查询语句 **🔧 开发者友好** - 多数据库支持 - 查询历史与管理 - 模拟数据生成 - 灵活的导出选项
## ✨ 核心特性 ### 📊 可视化数据管理
Data Grid View **类电子表格的数据网格** - 直观地查看、编辑和管理数据 - 轻松排序、过滤和搜索 - 内联编辑与实时更新 - 批量操作提升效率
### 🔍 交互式 Schema 浏览器
**可视化 Schema 拓扑** - 交互式图表可视化 - 探索表关系 - 即时理解外键 - 轻松平移、缩放和导航 Schema Graph
### 💻 强大的查询界面
Scratchpad **Scratchpad 查询编辑器** - 类 Jupyter 笔记本的界面 - 语法高亮与自动补全 - 查询历史与复用 - 多单元格组织管理
### 🗄️ 多数据库支持 **社区版 (CE):** PostgreSQL, MySQL, SQLite3, MongoDB, Redis, MariaDB, ElasticSearch **企业版 (EE):** 包含所有 CE 版本的数据库,以及 Oracle, SQL Server, DynamoDB, Athena, Snowflake, Cassandra 等 ### 🎯 高级功能 - **模拟数据生成** - 为开发生成逼真的测试数据 - **灵活的导出选项** - 导出为 CSV, Excel, JSON 或 SQL - **高级过滤** - 可视化构建复杂的 WHERE 条件 - **AI 驱动的查询** - 通过 Ollama, OpenAI, Anthropic 或任何兼容 OpenAI 的提供商将自然语言转换为 SQL ## 🎮 立即体验 WhoDB
**无需任何设置即可体验 WhoDB**

🌐 Live Demo

Try WhoDB instantly with our sample database

Login Page

Launch Demo →

Pre-filled with sample PostgreSQL database

🎥 Video Demo

Watch WhoDB in action

WhoDB Demo Video

Watch Video →

Complete walkthrough of features

## 🚀 快速开始 ### 选项 1:Docker(推荐) 最快上手 WhoDB 的方式: ``` docker run -it -p 8080:8080 clidey/whodb ``` 然后在浏览器中打开 [http://localhost:8080](http://localhost:8080)。 ### 选项 2:Docker Compose 用于更多的控制与配置: ``` version: "3.8" services: whodb: image: clidey/whodb ports: - "8080:8080" environment: # AI Integration (Optional) # Ollama Configuration - WHODB_OLLAMA_HOST=localhost - WHODB_OLLAMA_PORT=11434 # Anthropic Configuration - WHODB_ANTHROPIC_API_KEY=your_key_here # - WHODB_ANTHROPIC_ENDPOINT=https://api.anthropic.com/v1 # OpenAI Configuration - WHODB_OPENAI_API_KEY=your_key_here # - WHODB_OPENAI_ENDPOINT=https://api.openai.com/v1 # Generic AI Providers (OpenAI-compatible endpoints) # Use WHODB_AI_GENERIC__* to add any OpenAI-compatible provider. # can be any unique identifier (e.g., LMSTUDIO, OPENROUTER). # # LM Studio example: # - WHODB_AI_GENERIC_LMSTUDIO_NAME=LM Studio # - WHODB_AI_GENERIC_LMSTUDIO_BASE_URL=http://host.docker.internal:1234/v1 # - WHODB_AI_GENERIC_LMSTUDIO_MODELS=mistral-7b,llama-3-8b # # OpenRouter example: # - WHODB_AI_GENERIC_OPENROUTER_NAME=OpenRouter # - WHODB_AI_GENERIC_OPENROUTER_BASE_URL=https://openrouter.ai/api/v1 # - WHODB_AI_GENERIC_OPENROUTER_API_KEY=your_key_here # - WHODB_AI_GENERIC_OPENROUTER_MODELS=google/gemini-2.0-flash-001,anthropic/claude-3.5-sonnet # volumes: # (Optional for SQLite) # - ./sample.db:/db/sample.db ``` ### 接下来做什么? 1. **连接到您的数据库** - 在登录页面输入您的数据库凭证 2. **探索您的 schema** - 浏览表并可视化关系 3. **运行查询** - 使用 Scratchpad 执行 SQL 查询 4. **管理数据** - 轻松编辑、添加和删除记录 📖 **有关详细的安装选项和配置**,请参阅我们的[文档](https://docs.whodb.com/) ## 💻 WhoDB CLI WhoDB 还提供了一个强大的命令行界面,具备交互式 TUI(终端用户界面)和为 AI 助手提供的 MCP server 支持。 ### 特性 - **交互式 TUI** - 功能齐全的数据库管理终端界面 - **MCP Server** - 支持 Claude、Cursor 和其他 AI 工具的模型上下文协议 - **跨平台** - 适用于 macOS、Linux 和 Windows ### 快速安装 ``` # macOS/Linux curl -fsSL https://raw.githubusercontent.com/clidey/whodb/main/cli/install/install.sh | bash # Homebrew (即将推出) brew install whodb-cli # npm npm install -g @clidey/whodb-cli ``` ### 使用方法 ``` # 启动交互式 TUI whodb-cli # 作为 AI 助手的 MCP server 运行 whodb-cli mcp serve ``` 📖 **有关完整的 CLI 文档**,请参阅 [CLI README](./cli/README.md) ## 🛠️ 开发设置 ### 前置条件 - **GoLang** - 推荐使用最新版本 - **PNPM** - 用于前端包管理 - **Node.js** - 版本 16 或更高 ### 版本说明
**社区版 (CE)** - PostgreSQL - MySQL / MariaDB - SQLite3 - MongoDB - Redis - ElasticSearch **企业版 (EE)** - 包含所有 CE 版本的数据库 - Oracle - SQL Server - DynamoDB - Athena - Snowflake - Cassandra - 以及更多...
📚 有关详细的构建说明,请参阅 [BUILD_AND_RUN.md](./BUILD_AND_RUN.md);有关架构细节,请参阅 [ARCHITECTURE.md](./ARCHITECTURE.md)。 ### 前端开发 导航到 `frontend/` 目录并启动开发服务器: ``` cd frontend pnpm i pnpm start ``` ### 后端开发 #### 1. 构建前端(首次设置) 如果 `core/build/` 目录不存在,请先构建前端: ``` cd frontend pnpm install pnpm run build rm -rf ../core/build/ cp -r ./build ../core/ cd .. ``` #### 2. 设置 AI 集成(可选) 要启用自然语言查询: 1. **Ollama** - 从 [ollama.com](https://ollama.com/) 下载 # 安装 Llama 3.1 8b 模型 ollama pull llama3.1 WhoDB 将自动检测已安装的模型,并在侧边栏显示 **Chat** 选项。 2. **OpenAI/Anthropic** - 设置环境变量(参见上方的 Docker Compose 示例) 3. **任何兼容 OpenAI 的提供商** - 使用 `WHODB_AI_GENERIC__*` 环境变量连接到 LM Studio、OpenRouter 或任何提供兼容 OpenAI API 的提供商(参见上方的 Docker Compose 示例) #### 3. 启动后端服务 ``` cd core go run ./cmd/whodb ``` 后端将在 `http://localhost:8080` 上启动 ## 💼 使用场景 ### 👨‍💻 面向开发者
**本地开发** - 开发期间快速检查数据库 - 通过只读访问调试生产问题 - 使用真实数据测试 API endpoint - 探索 schema 变更 **API 开发** - 验证数据转换 - 测试查询性能 - 生成用于测试的模拟数据 - 导出用于集成测试的数据
### 📊 面向数据分析师 - 快速运行临时 SQL 查询 - 将数据导出到 Excel 进行分析 - 可视化构建复杂过滤器 - 可视化表关系 ### 🧪 面向 QA 工程师 - 生成逼真的测试数据 - 在测试期间验证数据库状态 - 快速调试测试失败原因 - 验证数据迁移 ### 🛠️ 面向数据库管理员 - 监控表结构和索引 - 高效管理用户数据 - 快速探索 schema - 紧急数据修复 ## ❓ 常见问题
WhoDB 与其他数据库工具有何不同?
WhoDB 结合了 Adminer 等工具的轻量级特性与现代 UX、强大的可视化功能和 AI 能力。与 DBeaver 等消耗大量资源的工具不同,WhoDB 在提供更快、更直观的体验的同时,内存占用减少了 90%。
WhoDB 适合在生产环境中使用吗?
是的,WhoDB 已达到生产就绪状态,并被成千上万的开发者使用。对于生产环境,我们建议: - 尽可能使用只读数据库账户 - 启用 SSL/TLS 连接 - 考虑使用企业版以获取审计日志和高级安全功能
WhoDB 如何处理大型数据集?
WhoDB 实现了多项性能优化: - 表格虚拟化实现高效渲染 - 针对大型结果集的延迟加载 - 分页控制 - 查询结果流式传输
支持哪些数据库?
**社区版:** PostgreSQL, MySQL, MariaDB, SQLite3, MongoDB, Redis, ElasticSearch **企业版:** 包含所有 CE 版本的数据库,以及 Oracle, SQL Server, DynamoDB, Athena, Snowflake, Cassandra 等
如何部署 WhoDB?
WhoDB 可以通过多种方式部署: - **Docker** - 单命令部署 - **Docker Compose** - 适用于生产环境设置 - **Kubernetes** - 适用于企业环境 - **二进制文件** - 在服务器上直接安装 详情请参阅我们的[快速开始](#quick-start)部分。
WhoDB 会存储我的凭证吗?
不会。WhoDB 默认不存储数据库凭证。连接是临时的,当您关闭浏览器时凭证会被清除。您可以选择配置存储在浏览器本地的连接配置文件。
我可以使用 WhoDB 的 AI 功能吗?
可以!WhoDB 集成了: - **Ollama** - 用于本地、私有的 AI 模型 - **OpenAI** - GPT-4 及其他 OpenAI 模型 - **Anthropic** - Claude 模型 - **任何兼容 OpenAI 的提供商** - LM Studio, OpenRouter, vLLM 等均可通过 `WHODB_AI_GENERIC__*` 环境变量接入 这些集成让您可以使用自然语言而不是 SQL 来查询数据库。
🤝 贡献 我们欢迎社区的贡献!无论是错误报告、功能请求还是代码贡献,我们都非常感谢您帮助改进 WhoDB。 ### 如何贡献 1. **报告问题** - 发现了错误?[提交一个 issue](https://github.com/clidey/whodb/issues) 2. **功能请求** - 有好的想法?[发起一个讨论](https://github.com/clidey/whodb/discussions) 3. **提交 PR** - 想要贡献代码?请查阅我们的[贡献指南](CONTRIBUTING.md) 4. **改进文档** - 帮助我们完善文档 ### 开发资源 - [贡献指南](CONTRIBUTING.md) - 详细的贡献准则 - [架构](ARCHITECTURE.md) - 了解代码库 - [构建与运行](BUILD_AND_RUN.md) - 开发设置说明 ## 📸 截图
查看更多截图 ### 数据管理 Data View ### 添加/编辑记录 Add Row ### 高级过滤 Where Conditions ### 导出选项 Export Dialog ### Schema 图谱可视化 Graph View ### Scratchpad 查询编辑器 Scratchpad ### 查询结果 Query Results ### 多数据库支持 Database Types
## 🏢 基础设施与支持 WhoDB 的部署和 CI/CD 由 [Clidey](https://clidey.com) 提供支持,这是一个无代码 DevOps 平台。 ### 联系与支持 - **电子邮件:** [support@clidey.com](mailto:support@clidey.com) - **GitHub Issues:** [报告 Bug](https://github.com/clidey/whodb/issues) - **讨论:** [加入讨论](https://github.com/clidey/whodb/discussions) - **文档:** [docs.whodb.com](https://docs.whodb.com/)
### ⭐ 在 GitHub 上为我们加星! 如果您觉得 WhoDB 有用,请考虑在 GitHub 上为我们加星。这有助于我们发展社区并持续改进 WhoDB。 [![GitHub stars](https://img.shields.io/github/stars/clidey/whodb?style=social)](https://github.com/clidey/whodb/stargazers) **由 Clidey 团队用 ❤️ 构建** *"这是魔法吗?这是巫术吗?不,这只是 WhoDB!"*
标签:AI, Chat, ClickHouse, DBMS, DFIR, Docker, Elasticsearch, EVTX分析, Go语言, IP 地址批量处理, LangChain, MariaDB, MongoDB, PostgreSQL, Redis, SQLite, TypeScript, 全栈, 可视化管理, 安全插件, 安全防御评估, 开源, 数据库可视化, 数据库客户端, 数据库管理, 数据探索器, 数据泄露, 数据浏览, 数据运维, 日志审计, 程序破解, 聊天界面, 自动化代码审查, 请求拦截, 轻量级