Non-Profit, International

Spirit unsterblich.

WSL2 中安装 MySQL 并通过 Windows 连接

字数统计:381 blog

WSL2 最近支持了 systemd 使得 MySQL 的安装顺利了不少,在此基础上可以通过配置 MySQL 远程连接使得 Windows 的 SQL 管理软件可以直接管理 WSL2 里的 MySQL。

首先登录 WSL2 开启 WSL2 的 systemd:


nano /etc/wsl.conf

然后加入


[boot]
systemd=true

也可以通过以下命令一步到位:


echo -e "[boot]\nsystemd=true" | sudo tee -a /etc/wsl.conf

使用 exit 退出 WSL2,使用 wsl --shutdown 关闭 WSL2,再启动

然后使用 apt 安装 MySQL Server,Ubuntu 22.04 中的 MySQL 是 8.0:


sudo apt install mysql-server

然后编辑 /etc/mysql/mysql.conf.d/mysqld.cnf 修改 bind-address 为 0.0.0.0,使得 MySQL 允许外部访问:


bind-address            = 0.0.0.0

然后重启 MySQL:


sudo /etc/init.d/mysql restart

然后更改 MySQL 密码:


sudo mysql


ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'password';

然后初始化 MySQL:


sudo mysql_secure_installation

根据提示输入上面设置的密码然后回车,输入 n 回车,输入 y 回车,输入 n 回车,输入 y 回车,输入 y 回车

然后开放外部访问权限给 MySQL:


sudo mysql -u root -p


use mysql;
upsate user set host="%" where user="root"

最后更改 iptable 防火墙规则:


sudo iptables -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
sudo iptables-save -c

最后再执行一下上面的命令即可让 Windows 通过本地 127.0.0.1:3306 访问 WSL2 的 MySQL Server


若无特殊声明,本人原创文章以 CC BY-SA 3.0 许可协议 提供。