dsh-mysql-assistant:把 MySQL 学习收进 DSH 客户端面板

前言

在 DeepSeek Harness(DSH)里做后端或数据相关开发时,常见问题不是「找不到 MySQL 文档」,而是资料分散、练习环境要自己搭、报错缺少上下文、学完不清楚与生产环境的差距。社区插件 dsh-mysql-assistant(维护者 lniev,分类为客户端)把知识地图、学习路线、企业实战、SQL 操练场和 AI 问答放进同一个 Web 面板,默认离线可用,需要时再切到本机或 Docker 的 MySQL 8。下面介绍它的定位、能力与安装用法。

这是什么

MySQL 学习助手 是一个 DSH 插件:把 MySQL 从「会用」到「用好」做成可交互学习工作台。Host 侧提供知识 API、操练场执行与 Agent 工具;客户端注入 Harness 侧边栏,入口名为 MySQL 学习助手。

内容规模(以仓库 README 为准):

模块 规模
知识地图 83 个知识点、5 层、182 条依赖、5 条推荐路线
学习路线 7 个阶段、40 项任务、3 条路线
企业级实战 8 个场景
SQL 操练场 内置电商 7 张表、24 道练习、3 种判题模式
AI 问答 真实 DSH 会话,对接内置知识库与操练场上下文

许可证为 MIT;package.json 中版本为 0.1.0,要求 Node.js ≥ 20、DSH ≥ 0.2.2-0。

核心功能

知识地图

83 个主题按「建立直觉 → SQL 能力 → 设计与优化 → 生产架构 → 企业实战」排成五层,节点之间有依赖关系。点击节点可查看通俗讲解、可运行 SQL、关键要点、常见坑与企业建议;支持推荐路线高亮、搜索、标记已学。示例 SQL 可一键送到操练场运行或带入 AI 问答。

学习路线

三条路线:后端开发主线、有 SQL 基础速通、DBA / 运维方向。每项任务包含目标、交付物、验收标准,并可跳转到地图或操练场;进度勾选后保存在本地。

企业级实战

八个从业务出发的场景:电商订单库建模、深分页优化、慢查询与索引、事务与库存防超卖、订单幂等、报表与窗口函数、主从读写分离、分库分表与在线迁移。每步含可执行 SQL、上线检查清单与踩坑提示。

SQL 操练场

内置电商示例库(users、categories、products、orders、order_items、payments、inventory)。24 道练习覆盖基础查询到事务与优化;编辑器支持语法高亮,Ctrl/⌘ + Enter 运行。自动判题支持 result(结果集比较)、verify(校验 SQL)、schema(表结构检查),每次在全新种子库上执行。提供提示、参考答案,可重置数据库。

AI 问答

使用真实的 DSH 会话(非本地假回答)。系统提示优先通过 mysql_docs 检索内置知识库;从地图、实战、操练场进入时会带入当前主题、题目、SQL 或报错。可调用只读工具 mysql_playground_query 在当前执行环境核对数据。

执行环境切换

默认 兼容内核:sql.js(SQLite + WebAssembly),无需安装数据库,内置常见 MySQL 方言翻译,离线可用。可选 真实 MySQL:通过 mysql2 连接本机或 Docker 的 MySQL 8,用于验证方言、执行计划与真实行为。连接信息保存在插件目录 .runtime/environment.json(权限 0600);真实模式下重建示例库会删表重建,应使用专用学习库,勿指向生产库。

面向 Agent 的工具

插件向 Harness Agent 注册:

  • mysql_docs:search / read / list / map / route / labs / exercise 等 action,检索路线与练习。
  • mysql_playground_query:在当前操练场环境执行只读 SQL(SELECT、SHOW、DESCRIBE、EXPLAIN、WITH 等),写操作与 DDL 会被拒绝。

安装与启用

环境要求

  1. 已安装带 Web UI 与插件机制的 DSH。
  2. Node.js 20+(Host 依赖 sql.js、mysql2)。
  3. 仅在使用「真实 MySQL」时需要 Docker 或本机 MySQL 8。

安装步骤

仓库 README 给出的流程如下。先把插件放到本地目录并安装依赖:

git clone https://github.com/lniev/dsh-mysql-assistant.git ~/ds-plugins/dsh-mysql-assistant
cd ~/ds-plugins/dsh-mysql-assistant
npm install

在 Harness 插件管理器中将该目录作为 bundle 安装,或由 Agent 执行:

plugin_manager install_bundle target=<该目录的绝对路径>

安装后刷新 Harness Web 页面,左侧栏会出现 MySQL 学习助手。若修改了 src/,执行 node build.mjs 重新生成 client.js。

也可把安装说明直接发给 Harness 里的 Agent(需具备 shell 与插件管理权限、可访问 GitHub),由 Agent 完成克隆、npm install 与 install_bundle;完成后刷新页面即可,无需重启 Harness。

典型用法

第一次打开可按 README 建议顺序体验:

  1. 在 知识地图 点开「MySQL 是什么」,阅读讲解与示例 SQL。
  2. 在 学习路线 选择「后端开发主线」,把第一阶段加入计划。
  3. 在 SQL 操练场 从 b1 开始做基础查询,卡住时使用「提示」。
  4. 概念或报错不理解时,使用「问 AI 讲解 / 问 AI 排查」进入 AI 问答。

若要验证真实 MySQL,可先启动专用库(README 示例):

docker run --name mysql-learn \
  -e MYSQL_ROOT_PASSWORD=123456 \
  -e MYSQL_DATABASE=mysql_learn \
  -p 3306:3306 -d mysql:8

在面板右上角 执行环境 中选择「真实 MySQL」,填写主机 127.0.0.1、端口 3306、用户 root、密码与数据库 mysql_learn,先「测试连接」再「连接并切换」。含 DDL 或显式事务提交的部分练习在真实模式下需注意 README 中的判题与回滚说明,必要时切回兼容内核。

开发与自测时,在插件目录可执行:

npm run validate
npm run build
npm test

适用场景与注意

适合谁:希望在 DSH 内系统学 MySQL、需要可运行示例与自动判题练习、并希望在同一界面衔接企业场景与 AI 排查的开发者;分类为 客户端,主要在浏览器面板中使用。

使用注意:

  • 插件以当前 DSH 进程权限在 Host 中运行 SQL 与读写本地配置;安装前应阅读 GitHub 仓库 源码与 MIT 许可证,确认符合你的环境策略。
  • 兼容内核与 MySQL 8 在存储过程、部分 ALTER、锁行为、EXPLAIN 输出等方面存在差异;知识库按真实 MySQL 讲解,操练场会对不支持语句给出提示。
  • 社区目录 SkillHub 插件页 与 GitHub 为独立信息来源,与 DeepSeek / 幻方无官方从属关系;星标等统计以目录页展示为准(当前为 0)。

结尾

经过上面的步骤,你可以在 DSH 侧边栏获得一块打通「讲—练—实战—问答」的 MySQL 工作台:默认离线操练,按需切真实库,Agent 还可通过 mysql_docs 与 mysql_playground_query 协助排查。进一步了解请访问 目录页 或 GitHub:lniev/dsh-mysql-assistant。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye