windows下datagrip远程连接WSL中的mysql数据库

WSL安装

  • 环境要求:必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。

  • 安装步骤:在管理员模式下打开 PowerShell 或 Windows 命令提示符,方法是右键单击并选择“以管理员身份运行”,输入 wsl --install 命令,然后重启计算机

    wsl --install
    

    此命令将启用运行 WSL 并安装 Linux 的 Ubuntu 发行版所需的功能。

注意:上述命令仅在完全未安装 WSL 时才有效,如果运行 wsl --install 并查看 WSL 帮助文本,请先卸载本机所存在的WSL:
执行:    wsl --unregister Legacy 

WSL安装8.0版本MySQL

WSL环境是最新的Ubuntu22.04版本,这个版本的软件商店内置的MySQL是8.0版本

所以直接可以通过apt安装即可

安装操作需root权限,你可以:

  1. 通过 sudo su -,切换到root用户

  2. 或在每一个命令前,加上sudo,用来临时提升权限

安装
  1. 更新apt仓库信息

    apt update
    
  2. 安装mysql

    apt install -y mysql-server
    
  3. 启动MySQL

    /etc/init.d/mysql start			# 启动
    /etc/init.d/mysql stop			# 停止
    /etc/init.d/mysql status		# 查看状态
    
  4. 登陆MySQL设置密码

    # 直接执行:mysql
    mysql
    
  5. 设置密码

    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
    
  6. 退出MySQL控制台

    exit
    
  7. 对MySQL进行初始化 (这一步可能会出现和下列图片不同的部分,我们可以按需选择)

    # 执行如下命令,此命令是MySQL安装后自带的配置程序
    mysql_secure_installation
    # 可以通过which命令查看到这个自带程序所在的位置
    root@DESKTOP-Q89USRE:~# which mysql_secure_installation
    /usr/bin/mysql_secure_installation
    
    1. 输入密码:

      image-20221016095458755

    2. 是否开启密码验证插件,如果需要增强密码安全性,输入y并回车,不需要直接回车(课程中选择直接回车)

      image-20221016095537716

    3. 是否更改root密码,需要输入y回车,不需要直接回车(课程不更改)

      image-20221016095621386

    4. 是否移除匿名用户,移除输入y回车,不移除直接回车(课程选择移除)

      image-20221016101232827

    5. 是否进制root用户远程登录,禁止输入y回车,不禁止直接回车(课程选择不禁止)

      image-20221016101324577

    6. 是否移除自带的测试数据库,移除输入y回车,不移除直接回车(课程选择不移除)

      image-20221016101404392

    7. 是否刷新权限,刷新输入y回车,不刷新直接回车(课程选择刷新)

      image-20221016101442459

  8. 重新登陆MySQL(用更改后的密码)

    mysql -uroot -p
    

    image-20221016110414182

9. 修改root用户密码

登录到MySQL之后,需要将自动生成的不便记忆的密码修改了,修改成自己熟悉的便于记忆的密码。

ALTER  USER  'root'@'localhost'  IDENTIFIED BY '1234';

执行上述的SQL会报错,原因是因为设置的密码太简单,密码复杂度不够。我们可以设置密码的复杂度为简单类型,密码长度为4。

set global validate_password.policy = 0;
set global validate_password.length = 4;

降低密码的校验规则之后,再次执行上述修改密码的指令。

10. 创建用户

默认的root用户只能当前节点localhost访问,是无法远程访问的,我们还需要创建一个root账户,用户远程访问

create user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '1234';

11. 并给root用户分配权限

grant all on *.* to 'root'@'%';

12. 重新连接MySQL

mysql -u root -p

然后输入密码

最关键的一步-使WSL能够访问主机

1.用管理员模式打开PowerShell
2.输入如下命令添加防火墙规则, 来允许WSL2访问

New-NetFirewallRule -DisplayName "WSL" -Direction Inbound  -InterfaceAlias "vEthernet (WSL)"  -Action Allow

3.打开"控制面板\系统和安全\Windows Defender 防火墙"-高级设置, 可在入站规则中看到WSL, 证明防火墙规则添加成功。

4.修改bind-address
执行以下指令之后:

cd /etc/mysql
vim mysql.conf.d

出现:
在这里插入图片描述
移动光标到mysqld.cnf , 单击回车,找到这一行:

bind-address = 127.0.0.1

在前面加 # 注释掉即可
使用service mysql restart或者systemctl restart mysql.service重启MySQL服务。

使用datagrip远程连接WSL下的MySQL数据库。

12. 通过DataGrip远程连接MySQL

在WSL中执行ifconfig获取ip
在这里插入图片描述

在datagrip中添加如下:
在这里插入图片描述

参考文章:https://blog.csdn.net/jiangzhuang321/article/details/124166522
参考文档:b站黑马程序员MySQL,课程中的进阶篇文档中的MySQL的安装。具体文档可以看我上传的资源,也可以到视频评论区下载
参考文章: mysql8.0远程配置

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
远程连接WSL子系统,首先需要确保你可以远程访问你的Windows电脑,并且开启了路由器的端口转发功能,将WSL的SSH端口转发到可以远程访问的路由器网段下。 然后,在远程主机输入你的Ubuntu的IP地址(而不是WSL2的IP),点击OK即可进入子系统了。 下面是具体的操作步骤: 1. 在WSL使用`ifconfig`命令查看IP地址,假设为10.10.10.2。 2. 使用管理员权限打开cmd窗口,执行以下命令将WSL的SSH端口转发到Windows的22222端口: `netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=22222 connectaddress=10.10.10.2 connectport=22` 3. 放行Windows的22222端口,如果是WSL2,可以使用以下命令添加放行规则: `netsh advfirewall firewall add rule name=WSL2 dir=in action=allow protocol=TCP localport=22222` 4. 在WSL开启其他地址的访问权限,使用以下命令编辑`/etc/hosts.allow`文件: `sudo vim /etc/hosts.allow` 在文件最下方添加`ALL:ALL`,保存并退出。 5. 重启SSH服务使更改生效: `sudo service ssh restart` 现在你应该可以使用远程连接工具连接WSL子系统了。记住,使用远程连接时要使用Ubuntu的IP地址,并连接Windows的22222端口。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [远程登录WindowsWSL子系统](https://blog.csdn.net/qq_32115939/article/details/123061407)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [远程连接wsl的Ubuntu子系统](https://blog.csdn.net/weixin_42582542/article/details/120850014)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值