在 WSL2 下 运行 时,无法通过 VSCode 扩展访问我的场外 MYSQL 数据库

Unable to access my off site MYSQL DB via a VSCode extension when it is running under WSL2

我是 运行 Windows 11. 我通过 WSL2 在 Debian 运行 中拥有我的开发环境。

我有 this VSCode extension installed(尽管我尝试了多个 SQL VSCode 扩展,它们的作用都一样)

如果我在 WSL2 实例中打开了 VSCode window,我将无法连接到我的数据库,但是如果我有一个正常的 VSCode window 打开,我我能够使用任何扩展来访问我的数据库。

在这两种情况下,数据库连接的详细信息是相同的。

我需要使用一个名为 ScaleFT 的程序来创建到数据库的安全隧道,我假设这是问题的部分原因。

我能够从 WSL 和普通 VSCode window.[= 连接到 docker 中我的本地开发 MYSQL DB 运行 14=]

我发现 WSL 与主机系统的网络共享似乎 运行 陷入麻烦 很多 VPN 和 Ad-Hoc 隧道与 Windows主机.

对我来说最有效的是为 WSL 主机安装一个独立的客户端。我个人使用 Ubuntu,但我敢打赌这也将是您的 Debian 安装的一个插件。

将 ScaleFT 存储库添加到 apt:

echo "deb http://pkg.scaleft.com/deb linux main" | sudo tee -a /etc/apt/sources.list

将 ScaleFT 签名密钥添加到您的本地密钥环:

curl -fsSL https://dist.scaleft.com/pki/scaleft_deb_key.asc | gpg --dearmor | sudo tee /usr/share/keyrings/scaleft-deb-key.gpg

拉取包列表并安装Linux工具:

sudo apt update && sudo apt install -y scaleft-client-tools scaleft-url-handler

这应该会为您留下 sft 客户端工具的现成副本。您可以测试:

sft --version

从那里,您可以enroll your new WSL client并且那些连接应该开始为您工作,但是,当然,您的里程可能会有所不同!