WSL 2 安装MySQL最新稳定版

53 阅读2分钟

一般执行sudo apt install mysql-server命令是默认安装的MySQL 5.7版本,由于不符合我的程序要求,需安装MySQL最新稳定版

安装MySQL最新稳定版

下载最新的DEB文件

从以下网页获取最新的DEB文件下载链接,例如:

wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.25-1_all.deb

dev.mysql.com

解压DEB文件

解压过程中会弹出页面选择版本,直接OK即可(默认MySQL最新版)

sudo dpkg -i mysql-apt-config_0.8.25-1_all.deb

获取远端更新程序的清单

sudo apt-get update

安装

输入以下命令执行安装后,在安装过程中会弹出页面提示输入root账户的密码(两次),直接输入即可,接着会弹出页面让选择加密方式(8.0+和5.X的加密方式不一),默认选择8.0+的加密方式即可(如果使用的MySQL图形化数据库管理软件版本低,则选择5.X的加密方式)

sudo apt install mysql-server

验证(查看MySQL版本)

mysql --version

登录

在WSL 2的shell中登录,有可能会遇到以下情况

mysql -u root -p 

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

解决方案

由于/var/run/mysqld文件总是消失,重启WSL 2后就要重新创建,所以在其MySQL的启动脚本中添加了以下shell语句:

  1. 临时使用可先使用以下命令解决
sudo mkdir -p /var/run/mysqld
sudo chown mysql /var/run/mysqld/

2. 长期使用需在MySQL启动脚本中添加以下shell语句,chown命令自己抽离出来吧,懒得改了

#使用vim打开MySQL启动脚本,将以下shell语句添加进去
sudo vim /etc/init.d/mysql

mysqld_dir="/var/run/mysqld"
if [ ! -d "$mysqld_dir" ]
then
    mkdir -p $mysqld_dir
    chown mysql $mysqld_dir
else
    chown mysql $mysqld_dir
fi

启动、停止、重启MySQL

sudo service mysql start
sudo service mysql stop
sudo service mysql restart

若是哪里有理解错误的或写错的地方,望各位读者评论或者私信指正,不胜感激。