内网与离线环境
SQL Visualizer 的所有核心能力都在本地完成,不连外网也能正常使用。这一页说明插件会访问哪些网络、内网部署需要注意什么,以及如何把更新通道换到内网。
结论:核心功能全部离线可用
| 功能 | 是否需要外网 |
|---|---|
| Wrapper 链 / XML / 注解 / JPA / HQL SQL 预览 | 否 |
? 占位符参数回填、方言格式化 | 否 |
| SQL → Java 反向转换、实体类与表右键生成 CRUD SQL | 否 |
| 控制台 SQL 日志捕获与还原、历史 SQL | 否 |
| 增强捕获(字节码增强) | 否——在你本机运行的应用 JVM 内挂载采集点(默认开启、无需确认),数据仅本机展示,不产生网络流量 |
| JOIN 关系图、PNG / SVG 导出 | 否 |
| 内置帮助页 | 否(jar 内的本地页面) |
| 检查插件更新 | 是(可选,默认关闭) |
| 提交问题反馈 | 是(可选,仅点击提交时发出) |
| 执行 SQL / EXPLAIN | 数据库连通即可;驱动缺失时由 IDE 联网下载,见下文 |
插件以本地静态分析完成预览与还原,不需要连接数据库。唯一的例外是可选的增强捕获通道:开启后会在你本机运行的应用 JVM 内挂载采集点(默认开启、无需确认,可在设置页关闭),采集到的数据仅展示在本机 IDE,同样不发起任何网络请求。
网络行为清单
插件只有两处网络出口,都是可选功能,失败时降级且不阻塞界面:
| 出口 | 目标 | 默认状态 | 失败表现 |
|---|---|---|---|
| 检查插件更新 | Gitee 仓库清单 | 关闭。设置 > Tools > SQL Visualizer > 更新与诊断 > 抢先体验:启用 Gitee 更新通道,默认不勾选 | 启动检查静默跳过;设置页手动检查显示「检查更新失败:…」 |
| 提交问题反馈 | 官网需求池 | 仅在你点「提交」时发出 | 对话框状态行显示失败原因,可复制、可重试 |
除此之外:
- 插件不发任何使用数据、无埋点
- 无账号、无激活码校验,首次运行无需登录
- 不上传你的代码或 SQL——只有你在反馈对话框里亲眼看过并确认提交的内容才会外发
- 不含内嵌网络服务,不监听任何端口
- 解析 mapper XML 时不会联网拉取 MyBatis DTD(外部实体解析已关闭),内网 DNS 不通的环境下不会因此卡顿
执行 SQL 与 JDBC 驱动
「执行 SQL」与「执行计划」走的是 IDE 原生的 Database 控制台。插件本身既不连接数据库也不下载驱动——但驱动若不在本地缓存,是 IDE 平台自己去联网下载的,纯内网环境下这一步会失败。
内网部署时请提前二选一:
- 手工指定驱动文件:打开 Database 工具窗口 → 右键数据源 → 属性 → 驱动页 → 在「驱动文件」中加入本机已有的驱动 jar
- 走内网 Maven 私服:在同一页的驱动配置中改用私服(Nexus / Artifactory 等)上的驱动坐标下载
完成预置后,执行 SQL 与 EXPLAIN 的表现与联网环境完全一致。
驱动缺失时的现象
执行时报「数据源初始化失败」或一直等待连接,插件会在提示里引导你打开 Database 工具窗口检查驱动——这正是驱动缺失(而非插件故障)的信号。
内网私有更新通道
如果希望内网分发插件更新、完全不走外网,可以用系统属性把更新清单地址整体换掉:
-Dmpvs.update.manifest.url=http://nexus.intranet.local/plugins/update.jsonIDE 的 vmoptions / 启动脚本 / idea.properties 同级位置均可配置该参数。
通道开关与版本信息都在设置页的「更新与诊断」区(设置 > Tools > SQL Visualizer > 关于):

清单格式
清单是一份 JSON,只有 version 与 downloadUrl 是必填:
{
"version": "2026.9.18",
"downloadUrl": "http://nexus.intranet.local/plugins/mybatis-plus-sql-visualizer-2026.9.18.zip",
"changeNotes": "本次更新内容(纯文本,\n 可换行)",
"publishDate": "2026-09-15",
"sinceBuild": "243"
}| 字段 | 必填 | 说明 |
|---|---|---|
version | 是 | 新版本号,需高于当前版本才会提示更新 |
downloadUrl | 是 | 插件包下载地址,指向内网文件服务即可,无域名白名单限制 |
changeNotes | 否 | 变更日志纯文本,展示在更新通知与设置页 |
publishDate | 否 | 发布日期 |
sinceBuild | 否 | 最低 IDE 构建号;高于当前 IDE 时仅提示不兼容,不阻止下载 |
插件包的下载地址与清单地址相互独立,可以都放在内网,也可以只把清单换掉、包仍走外网(若你的内网能访问)。
该属性在 IDE 启动时读取一次
mpvs.update.manifest.url 在进程启动阶段就被解析并固化,启动后修改不生效,必须重启 IDE。启动日志中会记录一行 update manifest url overridden by system property: <你的地址>,可用来确认换源是否已生效。
换源只改变清单与安装包的下载来源,下载安装仍走插件自带的「一键下载安装」:新版在运行中的 IDE 内热替换即时生效(免重启),环境不支持动态安装时自动回退重启脚本——与外网更新通道的行为完全一致。
构建与发版是另一回事
以上讲的都是运行期。如果你要在纯内网构建本插件或自行发布,还需要 Maven 仓库(项目默认走阿里云镜像与 Maven Central)和 JetBrains 插件门户(Gradle 插件与目标 IDE 发行版的下载来源),需要预先配置内网私服与离线缓存。
这与内网安装使用互不影响——只在运行期无外网是完全可行的。