MuOpt沐优是一套基于Spring Boot 3构建的Web SQL优化与信创转换开源工具源码,定位是给开发者和DBA一个能带进内网的SQL优化瑞士军刀。它以单个可执行jar包发布,浏览器直接访问即可使用,无需安装任何客户端,内置十余种数据库驱动,满足信创改造与日常慢SQL排查两类核心场景。
项目围绕三件痛点展开,一是慢SQL缺乏不依赖IDE的开箱即用排查工具,二是信创迁移中上千条SQL需从MySQL或Oracle改写为达梦、人大金仓、GaussDB等国产方言,三是内网环境无法访问在线工具。MuOpt沐优将索引建议、方言转换、执行计划可视化整合到本地Web应用,降低使用门槛。
源码系统概览
源码简介
MuOpt沐优是一款基于Spring Boot 3.2的开源SQL优化与信创转换源码,采用单文件jar部署,后端使用JSqlParser 4.9解析SQL抽象语法树,前端为Vue 3加Element Plus的CDN纯HTML页面,无独立构建工具,打包产物约83MB,内置多种数据库驱动。
项目作者为vfaner,采用MIT许可证开源,仓库位于GitHub与Gitee双平台,当前版本v1.1.0。它的核心价值在于把数据库优化能力做成可离线运行的本地Web应用,适合政企信创改造与数据库管理员工作台。
适用场景
信创改造,业务系统从MySQL或Oracle迁移到达梦、人大金仓、GaussDB等国产数据库
日常开发中慢SQL的索引分析与改写建议
扫描项目目录批量提取MyBatis XML与注解SQL做整体优化
内网环境无法访问在线工具,需要本地离线部署的数据库工作台
数据库管理员查看执行计划、识别冗余索引与大小表驱动
技术栈与运行环境
压缩包大小: 待填
解压后大小: 待填
后端语言: Java(Spring Boot 3.2 + JSqlParser 4.9)
前端语言: Vue 3 CDN + Element Plus CDN(纯HTML无构建)
数据存储: H2文件库 + Spring Data JPA,密码用spring-security-crypto加密落库
AI接口: OpenAI兼容协议与Anthropic Messages协议
运行环境: JDK 17+,默认监听127.0.0.1端口8080
功能亮点
智能索引建议,从WHERE、JOIN ON、ORDER BY等条件提取候选列生成组合索引
SQL信创转换,规则引擎毫秒级完成18种数据库方言转换
扫描优化与转换,支持整个项目一键原地替换并自动.bak备份
SQL执行计划,提供表格、树形、图形三视图按操作类型着色
AI深度优化,支持多模型互斥启用,失败自动降级本地规则改写
数据源配置,十余种数据库驱动内置,支持索引存在性检测
与同类工具区别
MuOpt沐优和DBeaver、Navicat这类数据库客户端相比,核心区别体现在SQL优化与信创转换场景,而不是通用管理后台。下面从部署形态、方言转换、AI能力三个维度做对比。
| 对比项 | MuOpt沐优 | DBeaver | Navicat |
|---|
| 部署方式 | 单jar本地Web | 桌面客户端 | 桌面客户端 |
| 信创方言转换 | 内置18种 | 不支持 | 部分支持 |
| AI深度优化 | 支持多模型 | 无 | 无 |
| 执行计划可视化 | 表格树形图形三视图 | 有 | 有 |
技术架构与部署指南
安装与部署提示
部署依赖Maven与JDK 17+,编译打包命令mvn clean package生成target下的muopt.jar,之后java -jar muopt.jar即可启动,默认访问http://localhost:8080,首次使用需注册登录账号。
打包产物为单个可执行fat jar约83MB,内置全部数据库驱动与前端页面,可拷贝到装有JDK 17+的内网机器直接运行,无需Maven与联网。通过–server.port与–server.address参数可覆盖端口与监听地址,局域网访问需加–server.address=0.0.0.0并自行配置网关鉴权。
最后更新2026年,版本v1.1.0。数据配置保存在运行目录下data文件夹的H2文件库中,重启不丢,不要删除data目录,也可用APP_DATA_DIR指向绝对路径持久化。项目更新日志见官网changelog页。
截图与演示说明
首页大图为MuOpt沐优手工优化界面,展示SQL输入区、AI深度优化开关与优化结果输出,清晰体现智能索引建议与AI改写的工作流程,适合作为封面与首图展示核心操作。

SQL执行计划页提供表格、树形、图形三种视图,连接数据源后执行EXPLAIN分析,成本等级与预估扫描行数直接展示,慢SQL一目了然。SQL转换页支持单条与批量方言转换,适合作为信创迁移配图。


常见问题
问. 项目部署需要哪些环境
需要JDK 17及以上,编译需Maven,运行时仅需java -jar muopt.jar即可,内置全部数据库驱动与前端页面,无需额外安装。
问. 支持哪些国产数据库方言转换
内置18种目标方言,包括达梦DM8、人大金仓、GaussDB、openGauss、OceanBase、TiDB、GBase等,覆盖主流信创数据库。
问. 不配置AI模型能否使用
可以。不启用任何AI模型也能正常使用智能索引建议与规则改写,仅AI深度改写与AI润色功能不可用。
安全风险提示
项目为本地部署的Web工具,默认只监听127.0.0.1,局域网暴露需自行加网关鉴权。账号登录连续失败5次锁定30分钟,登录态基于HttpSession,个人中心支持自助改密。密码与API Key使用spring-security-crypto加密落库,不回传前端。
执行计划使用EXPLAIN而非ANALYZE,不会真实执行写操作。扫描优化的写回功能自动生成.bak备份,建议在版本控制下执行并先查看diff。请确保运行目录data与logs目录持久化备份。
下载说明
源码来自GitHub开源仓库,附带Gitee镜像地址,项目采用MIT许可证可免费商用。压缩包已按规范打包,内附安装部署说明,下载解压即可查看完整源码结构。
GitHub项目开源地址 https://github.com/vfaner/muopt