Windows 10 连接不上 WSL2 内服务的问题

这个问题在 Build 20180 及以上的系统内已经被修复了。可惜,截至这篇文章完成时我还在 19042。

起因就是,我不想安装 MySQL for Windows。因为 locale 为中文(简体)的 Windows 系统,其命令提示符 / PowerShell 的代码页为 936,即 ANSI/OEM – Simplified Chinese (GBK)。而为了用 UTF-8 编码,直接显示一定是乱码的。在一起上数据库课程我给同学推广 UTF-8 的时候,最后我给他们安装了 Hyper 并叫他们在里面操作才解决了问题。

于是在 WSL2 里使用 Debian 系统安装了 mariadb,并配置好 UTF-8 相关

sudo apt install mariadb-server
sudo service mysql status

然后我想通过 Windows 连接,可问题来了,怎么连也连不上,一直提示 Connection refused。

上网一搜寻之后,原来这是一个老问题,有用户提供的解决方法为关闭快速启动。或者,先关闭 WSL:

wsl --shutdown

不管怎样,我使用后者解决了这个问题。顺便吐槽一下,感觉微软把好的 fix 以及功能全部丢进了 Insider(例如 DoH 支持以及 WSL 的 Wayland 支持)……可下半年才会发大的新版本。


如果喜欢本文,欢迎点击下方的「鼓掌」按钮!

如果上面没有加载出任何东西,可以点击这里


如果喜欢本文,欢迎点击下方的「鼓掌」按钮!

如果上面没有加载出任何东西,可以点击这里