DBeaver默认不保存密码,但勾选“保存密码”后会以Base64编码明文写入connections.xml且无UI关闭选项;清除需手动删除该文件中对应password属性行,并重启软件。

默认不保存密码,但一旦勾选“保存密码”,DBeaver 就会把明文密码写进本地配置文件(connections.xml),且无法通过界面开关关闭——必须手动干预。
为什么找不到“关闭自动保存密码”的选项
DBeaver 的连接配置界面里,“保存密码”是个一次性勾选框,只在新建或编辑连接时出现;一旦勾选并完成连接,该状态就固化在连接定义中,后续打开连接设置对话框时这个复选框直接消失,UI 上没有任何反向控制开关。
- 这是设计使然,不是 bug:DBeaver 认为“已保存密码”的连接应保持可信状态,避免误操作暴露风险
- 你看到的“密码已保存”提示,实际是读取了
~/.dbeaver4/General/.metadata/.plugins/org.jkiss.dbeaver.core/connections.xml(Windows)或~/Library/DBeaverData/General/.metadata/.plugins/org.jkiss.dbeaver.core/connections.xml(macOS)里的password字段值 - 该字段内容是 Base64 编码的明文,不是加密——意味着只要能访问这个文件,就能还原密码
如何真正清除已保存的密码
必须直接编辑连接配置文件,不能依赖 UI。步骤如下:
- 关闭 DBeaver(否则修改会被覆盖)
- 用文本编辑器打开
connections.xml(路径见上条) - 搜索你的连接名(比如
<name>mysql-dev</name>),定位到对应<connection></connection>块 - 删掉其中的
<property name="password" value="..."></property>行(整行删除,包括尖括号) - 保存文件,重启 DBeaver —— 再次编辑该连接时,“保存密码”复选框会重新出现
注意:connections.xml 是 XML 格式,删错标签可能引发解析失败,导致连接列表空白;建议操作前先备份该文件。
不想再保存密码?从源头禁用
如果你希望所有新连接默认不存密,有两个更稳妥的做法:
- 在新建连接向导最后一步,**坚决不要勾选“保存密码”**;哪怕它默认勾选,也手动取消——这是唯一能阻止密码写入的时机
- 全局禁用:进入
窗口 → 首选项 → 数据库 → 连接设置,取消勾选Save password in connection configuration(注意:此选项仅对之后新建的连接生效,不影响已有连接) - 替代方案:使用操作系统密钥链(macOS Keychain / Windows Credential Manager)。启用方式是在连接编辑页的“驱动属性”里添加
usePasswordManager=true(需 JDBC 驱动支持,MySQL 8.0+ 默认支持)
最常被忽略的一点:即使你清除了 connections.xml 中的密码字段,如果之前启用了密钥链集成,密码仍可能留在系统凭据库里,需要单独清理。DBeaver 不会主动同步或覆盖系统级凭据,这点务必手动确认。


















