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沐优DBeaverNavicat
部署方式单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改写的工作流程,适合作为封面与首图展示核心操作。

MuOpt沐优 SQL手工优化界面

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

MuOpt沐优 SQL执行计划三视图

MuOpt沐优 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