• [WSL2] WSL2 下安装MySQL,并从Win10连接


    WSL2 下 Ubuntu 下载 MySQL8 并与WIN10连接记录。

    安装过程

    参考链接

    1. 移除MySQL 8.0 (如果没装过就无视此步)

    sudo apt-get purge mysql-server mysql-client
    sudo apt-get -y autoremove

    2. 修改dpkg的默认版本为MySQL 5.x

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

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

    3. 检查一下是不是默认版本改对了

    sudo apt policy mysql-server

    如果Candidate:后面是5.x版本,那么就是改好了。

    接下来更新一下

    sudo apt-get update

    4.安装MySQL 5.x

    sudo apt-get -y install mysql-server

    安装过程如果遇到一堆需要是否的全输入Y就ok

    sudo service mysql start

    此时应该正常启动mysql,,没有任何错误。

    多试着开几次,直到显示。

    然后可以试着登陆一下,默认无密码,默认需要sudo权限来登录。

    sudo mysql -u root

    5.修改默认版本为MySQL 8.x

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

    sudo apt update

    sudo apt policy mysql-server

    检查一下Candidate是否为0.8.x

    6. 安装MySQL 8.x

    sudo apt-get -y install mysql-server

    7.修改解释器的目录(wsl的bug)

    sudo vim /etc/init.d/mysql

    vim可以用任何文本编辑器

    找到

    . /usr/share/mysql/mysql-helpers

    将他改为

    . /usr/share/mysql-8.0/mysql-helpers

    即可。

    8.升级系统数据表为MySQL 8.x

    sudo service mysql start

    sudo mysql_upgrade -u root -p

    成功,芜湖~~

    疑难解答

    (1)如何重启MySQL

    sudo service mysql stop

    sudo service mysql start

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

    请使用sudo启动

    (3) No directory, logging in with HOME=/ 或一直拒绝访问

    修改用户模式

    sudo usermode -d /var/lib/mysql/ mysql

    不行就再重置UNIX密码

    sudo passwd root

    然后进入root账户

    su root

    然后登录

    mysql -u root

    进去成功了就ok了,可以退出root账户,再用sudo登录,就可以了。

    (4) 修改密码

    sudo mysqladmin -u root -p password

    然后更新密码就好啦

    (5) 出现一堆.... 没反应

    多等会。

    (6) 密码不知道

    wsl2 中安装MySQL比较奇怪,安装过程不会让你设置初始密码。一般密码为空,要还不行就如下操作

    修改

    /etc/mysql/mysql.conf.d/mysqld.cnf

    加一句

    skip-grant-tables (回头记得删掉)

    然后重启MySQL

    登录时尝试使用密码,输入空,和不使用密码。两种是两个效果。

    (7)不断拒绝访问

    给非root用户登录root账号的权限即可

    进入mysql

    use mysql;

    select user,host,plugin from user;

    update user set plugin = 'mysql_native_password';

    flush privileges;

    然后重启MySQL

    链接WSL2与WIN

    A-Ubuntu环境

    首先登进mysql

    use mysql;

    select host from user where user = 'root';

    update user set host = '%' where user = 'root';

    flush privileges;

    OK大功告成。

    B-Windows10 环境

    首先要对MySQL的IP段关闭防火墙

    再防火墙设置中新建入站规则,设置自定义模式。

    再作用域中远程IP地址添加WSL2的虚拟网卡的网关。

    可以在WSL2中用输入 ifconfig 查看

    对ip和掩码的最后一段做与运算,其他三段照抄ip就行。

    后面计算下子网有多大。打开计算器输入掩码最后一段,然后数0的个数,数几个就/几。

    此时我的是 172.18.77.144/4

    然后狂点下一步直到名称,随便起个名完成。

    C-连接

    再wsl2中启动mysql服务,然后再windows中cmd中输入

    mysql -h 上面的ip -u root -p

    然后再输入对应密码,成功登录!

    如有错误或者其他问题,欢迎留言询问。

  • 相关阅读:
    Locust性能测试-环境准备与基本使用 转自:悠悠
    Locust性能测试_先登录场景案例
    python_协程
    python_进程池以及线程池
    python_并发与通信
    python_进程与线程的补充
    python_并行与并发、多线程
    Hash算法:双重散列
    AVL树的插入和删除
    查找最小生成树:普里姆算法算法(Prim)算法
  • 原文地址:https://www.cnblogs.com/greenpepper/p/14563952.html
Copyright © 2020-2023  润新知