我windows 11 wsl2中启动Linux版dbeaver发现设置语言部分,中文无法显示,显示方框中间是7E41这些代码,这是什么原因,怎么解决。
这个问题是因为你的 WSL2 系统中缺少了中文字体。DBeaver 界面上的文字需要字体文件来渲染,找不到合适的字体时就会显示成方块加代码。
好消息是,解决方法并不复杂。最推荐的方式是直接使用 Windows 系统里已经有的字体,这样既不占用额外的磁盘空间,也能保证最佳的显示效果。
📝 解决方法:为 WSL2 安装中文字体
这里提供两种方法,你可以任选一种。方法一更简单快捷,方法二更专业稳定。
方法一:直接链接 Windows 字体(最简单,推荐)
这种方法不需要复制文件,只是建立一个“快捷方式”,让 WSL2 可以使用 Windows 的字体,最省空间。
打开你的 WSL2 终端。
依次执行以下命令:
# 1. 创建一个目录用来存放字体链接sudomkdir-p/usr/share/fonts/win11# 2. 将 Windows 的字体文件夹链接到这个新目录# (/mnt/c/Windows/Fonts 就是 Windows 的 C:\Windows\Fonts 文件夹)sudoln-sf/mnt/c/Windows/Fonts/* /usr/share/fonts/win11/# 3. 更新 Linux 的字体缓存,让系统识别这些新字体sudofc-cache-fv
执行完后,重新打开 DBeaver,中文应该就能正常显示了。
方法二:直接安装开源中文字体
这个方法是在 WSL2 内直接安装一套完整、免费的开源中文字体(思源黑体、文泉驿等)。
- 在 WSL2 终端中执行以下命令:
# 安装 Google 开发的思源黑体 (Noto CJK) 和文泉驿中文字体包sudoaptupdatesudoaptinstall-yfonts-noto-cjk fonts-wqy-microhei fonts-wqy-zenhai - 安装完成后,刷新字体缓存:
sudofc-cache-fv
同样,完成后重启 DBeaver 即可。
⚙️ 备选方案:检查 DBeaver 自身配置(如果安装字体后仍未解决)
如果安装字体后问题依然存在,可以再检查一下 DBeaver 自身的设置。
修改 DBeaver 的字体设置:
- 在 DBeaver 菜单栏,点击窗口 (Window)→首选项 (Preferences)。
- 在左侧导航栏,找到常规 (General)→外观 (Appearance)→颜色和字体 (Colors and Fonts)。
- 在右侧的列表里,找到基本 (Basic)→主字体 (Main Font),点击右侧的更改 (Change…)按钮。
- 在弹出的字体选择窗口中,选择一个明确支持中文的字体,例如Microsoft YaHei (微软雅黑)或Noto Sans CJK SC。
- 点击确定并重启 DBeaver。
检查并设置工作区编码:
- 同样在首选项 (Preferences)中,找到常规 (General)→工作空间 (Workspace)。
- 在右侧的文本文件编码 (Text file encoding)选项中,确保选择了UTF-8。
- 点击应用并关闭 (Apply and Close)。
先在 WSL2 里安装中文字体,绝大多数情况下都能直接解决问题。如果 DBeaver 里还有其他地方显示方块,欢迎随时告诉我具体情况,我再帮你看看。
我用第一种方法链接win11字体,在 DBeaver 中的方框消失了,显示日文、简体中文、繁体中文等,我选了简体中文。我也修改 DBeaver 的字体设置为 Microsoft YaHei ,说需要重启,结果重启后界面还是英文。工作区也是UTF-8,还需要改什么?
问题出在DBeaver 需要管理员权限才能修改界面语言。你在 WSL2 中通过 Windows 的 DBeaver 连接时,程序安装目录通常是只读的,导致图形界面的语言修改无法保存。
🎯 解决方案:手动修改配置文件
方法一:直接编辑 dbeaver.ini 文件(最快、最可靠)
找到 dbeaver.ini 文件
在 Windows 中,DBeaver 的配置文件通常在这些位置:
- 社区版:
C:\Program Files\DBeaver\dbeaver.ini - 企业版:
C:\Program Files\DBeaverEE\dbeaver.ini
如果你的 DBeaver 是通过 WSL2 命令启动的,可能在:
C:\Users\你的用户名\AppData\Local\DBeaver\dbeaver.ini
- 社区版:
用记事本以管理员身份打开这个文件
- 右键记事本 → “以管理员身份运行”
- 然后打开
dbeaver.ini
添加语言配置
在文件中找到
-vmargs这一行,在这一行之前添加以下两行:-nl zh完整的配置文件示例:
-startup plugins/org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.400.v20211117-0650 -product org.jkiss.dbeaver.product --launcher.defaultAction openFile -vmargs -Xms64m -Xmx1024m修改后应该变成:
-startup plugins/org.eclipse.equinox.launcher_1.6.400.v20210924-0641.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.400.v20211117-0650 -product org.jkiss.dbeaver.product --launcher.defaultAction openFile -nl zh -vmargs -Xms64m -Xmx1024m保存文件,重启 DBeaver
方法二:通过 Babel 语言包彻底汉化(适合希望完全汉化的用户)
如果官方语言包仍有部分界面显示英文,可以安装 Eclipse 的 Babel 语言包:
打开 DBeaver,点击菜单栏Help→Install New Software
在 “Work with” 输入框中输入:
https://download.eclipse.org/technology/babel/update-site/latest/等待加载完成后,在列表中找到并勾选:
Babel Language Pack for eclipse in Chinese (Simplified)点击Next,按照提示完成安装
安装过程中会提示信任证书,全部选择信任即可
安装完成后重启 DBeaver
方法三:通过启动命令临时指定语言
如果只是临时需要使用中文,可以在启动命令中直接指定:
在 WSL2 终端中,使用以下命令启动:
dbeaver-nlzh或者先进入 DBeaver 安装目录再启动:
cd/mnt/c/Program Files/DBeaver/ ./dbeaver.exe-nlzh这种方法不需要修改文件,但每次启动都需要添加参数。
📝 方法对比
| 方法 | 优点 | 缺点 |
|---|---|---|
| 修改 dbeaver.ini | 一劳永逸,重启后永久生效 | 需要管理员权限修改安装目录文件 |
| 安装 Babel 语言包 | 汉化更完整,部分未翻译的界面也能汉化 | 步骤较多,需要联网下载 |
| 启动命令指定 | 无需修改文件,不用管理员权限 | 每次启动都要输入参数 |
⚠️ 重要提示
为什么图形界面的设置无效:DBeaver 安装在
C:\Program Files下,这是 Windows 受保护的系统目录。普通用户通过软件内部设置界面修改语言时,程序没有权限写入该目录的配置文件,所以重启后设置丢失。关于字体设置:你之前已经把字体设置为 Microsoft YaHei,这个设置应该已经生效。界面语言和中文字体是两个独立的设置,字体设置主要负责汉字能否正确显示(方框问题),而语言设置负责菜单、按钮等界面文字是中文还是英文。
关于部分界面仍是英文:这是正常现象,DBeaver 的中文汉化包确实存在未完全翻译的部分,特别是比较新的功能或插件界面。通过方法二安装 Babel 语言包可以最大程度改善这个问题。
推荐你直接使用方法一(修改 dbeaver.ini),这是最稳定、最直接的方式。修改后重启 DBeaver,整个界面就应该变成中文了。
我用dbeaver -nl zh命令,启动就显示中文界面,有的菜单项没有翻译过来,但不影响。