WSL2中安装MySQL并通过Windows连接
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