如何在 Windows 上卸载 MongoDB Compass
MongoDB Compass 连的是一个 MongoDB 数据库,你的数据和连接本身在数据库那边,不在这个应用里,卸载 Compass 不会碰它们。Compass 自己的设置和缓存存在这台电脑上,服务器密码、SSH 隧道密码和 TLS 密码短语存在 Windows 凭据管理器里,不是文件,卸载也不会清掉这些。这份指南覆盖用 MongoDB.Compass.Full winget MSI 包按机器安装的 MongoDB Compass。
先退出 MongoDB Compass
关掉所有 Compass 窗口,在任务管理器(Ctrl+Shift+Esc)里确认没有 MongoDB Compass 进程还在。10 月 3 日的复测里,安装登记虽然没有 InstallLocation,Mole 仍识别到了 %ProgramFiles%\MongoDB Compass 和正在运行的进程。
用自带的卸载器移除应用
打开「设置 › 应用 › 已安装的应用」,找到 MongoDB Compass,选择卸载,或者运行:
winget uninstall --id MongoDB.Compass.Full
卸载器要求重启时,保存工作后重启再查,应用条目或文件还在也可能有其他原因,重启本身不能证明卸载已经完成。
数据分别在哪里
| 位置 | 里面是什么 | 如何处理 |
|---|---|---|
%APPDATA%\MongoDB Compass |
设置和支持文件 | 先看一遍再决定;想重装后保留原来的设置就先备份 |
%LOCALAPPDATA%\mongodb\compass |
本地缓存和支持数据 | 先看一遍再决定 |
| Windows 凭据管理器 | 保存的服务器密码、SSH 隧道密码和 TLS 密码短语,这是 MongoDB 自己文档里写的存法 | 卸载和 Mole 都不会删,想清掉自己打开凭据管理器删条目 |
检查结果
卸载完成后运行下面几条只读命令:
Get-Process MongoDBCompass -ErrorAction SilentlyContinue
winget list --id MongoDB.Compass.Full
Test-Path "$env:APPDATA\MongoDB Compass"
Test-Path "$env:LOCALAPPDATA\mongodb\compass"
Get-Process没有输出只表示未观察到匹配进程,被忽略的查询错误不能当作已经退出。winget list正常完成且没有匹配,才说明包记录已经没了;列出一行,说明卸载没完成。- 两条
Test-Path只要有一条返回True,说明那部分数据还在这台电脑上,只要你没有自己删掉,这就是正常的。
用 winget 安装时
winget uninstall 运行的是「设置 › 应用」用的同一个 MSI 卸载,删的是同一批程序文件,它不会主动动 %APPDATA%\MongoDB Compass、%LOCALAPPDATA%\mongodb\compass 或凭据管理器里的条目。
Mole 会列出什么
对按机器安装的 winget 版 MongoDB Compass:
%APPDATA%\MongoDB Compass会列出,但默认不勾选;它里面的缓存文件夹单独列出并默认勾选。%LOCALAPPDATA%\mongodb\compass会列出,但默认不勾选。- 开始菜单文件夹和注册表键
HKCU\SOFTWARE\MongoDB\MongoDB Compass会列出。 - Mole 从 Windows Installer 的组件记录识别程序目录,用它量大小和查进程,这些记录不会让组件目录本身变成可删除的残留。
- 凭据管理器里的条目从不列出。
这次检查覆盖了什么
2026 年 10 月 3 日在 ARM64 虚拟机复测,通过 winget 按机器安装 MongoDB Compass 1.52.0.0 的 MSI 包,Mole 识别到了程序目录和五个运行中的进程,全选审查行后,测量快照里没有本应用的残留。没有测试:登录真实数据库,以及从 mongodb.com 直接下载的安装包。
