Windows 11 上通过 WSL (Windows Subsystem for Linux) 安装 MySQL 8

Windows 11 上通过 WSL (Windows Subsystem for Linux) 安装 MySQL 8 的步骤如下:


✅ 1. 检查 WSL 的安装

首先确保已经安装并启用了 WSL 2

🔧 检查 WSL 版本

打开 PowerShell,执行以下命令:

wsl --list --verbose

确保 WSL 版本是 2。如果不是,请执行以下命令来设置默认版本:

wsl --set-default-version 2

✅ 2. 安装 Ubuntu(或其他 Linux 发行版)

如果尚未安装 Ubuntu,可以从 Microsoft Store 安装。

  1. 打开 Microsoft Store,搜索 Ubuntu
  2. 选择 Ubuntu 22.04 LTSUbuntu 20.04 LTS,然后安装。

✅ 3. 更新 Ubuntu 软件包

打开 Ubuntu 终端并更新系统:

sudo apt update && sudo apt upgrade -y

✅ 4. 安装 MySQL 8

执行以下步骤在 Ubuntu(WSL) 中安装 MySQL 8

🔧 第一步:添加 MySQL 官方源

sudo apt update
sudo apt install -y wget
wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb

安装时会弹出一个配置界面:

  • 选择 MySQL 8.0 并按 Enter
  • 选择 OK 并完成配置。

🔧 第二步:安装 MySQL 服务器

sudo apt update
sudo apt install -y mysql-server

✅ 5. 启动 MySQL 服务

执行以下命令启动 MySQL

sudo service mysql start

检查 MySQL 服务状态:

sudo service mysql status

✅ 6. 设置 MySQL root 密码

默认情况下,MySQL 的 root 用户密码是空的。为了安全起见,设置一个新的密码:

sudo mysql_secure_installation

系统会引导你进行以下配置:

  1. 设置 root 密码:根据提示输入新的密码。
  2. 移除匿名用户:选择 Y
  3. 禁止 root 远程登录:选择 Y
  4. 移除测试数据库:选择 Y
  5. 重新加载权限表:选择 Y

✅ 7. 通过 MySQL 客户端连接

执行以下命令连接到 MySQL

sudo mysql -u root -p

输入刚才设置的 root 密码,即可进入 MySQL Shell


✅ 8. 设置 MySQL 的远程访问权限(可选)

如果需要在 WSL 外部(例如 Windows 上)访问 MySQL,可以执行以下步骤:

🔧 修改 MySQL 配置文件

打开 MySQL 配置文件

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

找到以下行:

bind-address = 127.0.0.1

修改为:

bind-address = 0.0.0.0

🔧 重新启动 MySQL 服务

sudo service mysql restart

🔧 创建远程用户

MySQL Shell 中执行以下命令,创建允许远程访问的用户:

CREATE USER 'your_user'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

✅ 9. 确保 Windows 防火墙允许 3306 端口

  1. 打开 Windows Defender 防火墙
  2. 选择 高级设置
  3. 创建一个新的 入站规则,允许 3306 端口的访问。

✅ 10. 验证安装

Windows 上打开 MySQL Workbench 或使用 CLI,连接到 WSL 中的 MySQL 服务:

mysql -h 127.0.0.1 -P 3306 -u your_user -p

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/503210.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【学习笔记】数据结构(十)

内部排序 文章目录 内部排序10.1 概述10.2 插入排序10.2.1 直接插入排序10.2.2 其他插入排序10.2.2.1 折半插入排序(Binary Insertion Sort)10.2.2.2 2-路插入排序(Two-Way Insertion Sort)10.2.2.3 表插入排序(Table Insertion Sort&#xf…

论文解读 | NeurIPS'24 IRCAN:通过识别和重新加权上下文感知神经元来减轻大语言模型生成中的知识冲突...

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 点击 阅读原文 观看作者讲解回放! 作者简介 史丹,天津大学博士生 内容简介 大语言模型(LLM)经过海量数据训练后编码了丰富的世界知识。最近的研究表明&#xff0c…

Python编程实例-特征向量与特征值编程实现

特征向量与特征值编程实现 文章目录 特征向量与特征值编程实现1、什么是特征向量2、特征向量背后的直觉3、为什么特征向量很重要?4、如何计算特征向量?4、特征向量Python实现5、可视化特征向量6、总结线性代数是许多高级数学概念的基石,广泛应用于数据科学、机器学习、计算机…

密码学原理技术-第十一章-Hash Functions

文章目录 总结Why we need hash functionsDigital Signature with a Hash FunctionBasic Protocol for Digital Signatures with a Hash FunctionPrincipal input–output behavior of hash functions Security propertiesThe three security requirements of hash functionsWh…

支付宝手机网站支付

1.订单码支付,首先下载官方网站提供的sdk包到你的项目中。 2.部署到服务器上后,在根目录的config.php上配置好你的appId、公钥私钥和同步异步回调路径及日志文件后,就直接能访问到他们给的示例网页。 3.选择第一项手机网站支付,提…

【网络安全设备系列】9、WAF(Web应用防火墙)

0x00 定义: Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一种设备。 WAF需要部署在Web服务器的前面,串行接入,不仅在硬件性能上要求高,而且不能影响Web服务,所以HA功能、Bypass功能都是必…

【HarmonyOS应用开发——ArkTS语言】购物商城的实现【合集】

目录 😋环境配置:华为HarmonyOS开发者 📺演示效果: 📖实验步骤及方法: 一、在src/main/ets文件中创建components文件夹并在其中创建Home.ets和HomeProduct.ets文件。​编辑 二、在Home.ets文件中定义 …

unity学习8:unity的基础操作 和对应shortcut

目录 1 unity的基础操作的工具,就在scene边上 1.1 对应shortcut快捷键 2 物体的重置/ 坐标归到0附近 3 F:快速找到当前gameobject 4 Q:小手和眼睛,在场景中移动 5 W:十字箭头,移动gameobject 6 …

Harmony开发【笔记1】报错解决(字段名写错了。。)

在利用axios从网络接收请求时,发现返回obj的code为“-1”,非常不解,利用console.log测试,更加不解,可知抛出错误是 “ E 其他错误: userName required”。但是我在测试时,它并没有体现为空,…

(leetcode算法题)面试题 17.19. 消失的两个数字

可以在O(n)的时间复杂度下得到这两个消失的数字的异或的结果,或者得到这两个数字的和 但是怎么从上面的结果中得到这两个数字? 比如对于异或的结果,可以知道这两个数字在哪一位的置位是不同的 然后再根据这一位把 [1, n] 分为两个不同的数…

Go Ebiten随机迷宫生成示例

引言 迷宫生成是计算机科学中一个经典的问题,常用于算法教学和游戏开发。本文将介绍如何使用 Go 语言和 Ebiten 游戏引擎实现一个基于深度优先搜索(DFS)的随机迷宫生成算法,并通过可视化的方式展示迷宫的生成过程。 技术栈 Go …

Flutter 鸿蒙化 flutter和鸿蒙next混和渲染

前言导读 这一个节课我们讲一下PlatformView的是使用 我们在实战中有可能出现了在鸿蒙next只加载一部分Flutter的情况 我们今天就讲一下这种情况具体实现要使用到我们的PlatformView 效果图 具体实现: 一、Native侧 使用 DevEco Studio工具打开 platform_view_example\oho…

《一文读懂PyTorch核心模块:开启深度学习之旅》

《一文读懂PyTorch核心模块:开启深度学习之旅》 一、PyTorch 入门:深度学习的得力助手二、核心模块概览:构建深度学习大厦的基石三、torch:基础功能担当(一)张量操作:多维数组的神奇变换&#x…

jenkins入门6 --拉取代码

Jenkins代码拉取 需要的插件,缺少的安装下 新建一个item,选择freestyle project 源码管理配置如下:需要添加git库地址,和登录git的用户密码 配置好后执行编译,成功后拉取的代码在工作空间里

【2025最新计算机毕业设计】基于SpringBoot+Vue智慧养老医护系统(高质量源码,提供文档,免费部署到本地)【提供源码+答辩PPT+文档+项目部署】

作者简介:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流。✌ 主要内容:🌟Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能…

51c自动驾驶~合集45

我自己的原文哦~ https://blog.51cto.com/whaosoft/13020031 #运动控制和规划控制需要掌握的技术栈~ 各大垃圾家电造车厂又要开始了~~~​ 1、ROS的通信方式 李是Lyapunov的李:谈谈ROS的通信机制 话题通信和服务通信,其中话题通信是通过发布和订阅…

【Qt】控件概述和QWidget核心属性1(enabled、geometry、windowTitle、windowIcon、QRC机制)

一、控件概念 界面上各种元素、各种部分的统称(如按钮、输入框、下拉框、单选复选框...) Qt作为GUI开发框架,内置了各种的常用控件,并支持自定义控件。 二、控件体系发展 1.没有完全的控件,需要使用绘图API手动绘制…

基于transformer的目标检测:DETR

目录 一、背景介绍 二、DETR的工作流程 三、DETR的架构 1. 损失函数 2. 网络框架讲解及举例 一、背景介绍 在深度学习和计算机视觉领域,目标检测一直是一个核心问题。传统方法依赖于复杂的流程和手工设计的组件,如非极大值抑制(nms&…

打包部署若依(RuoYi)SpringBoot后端和Vue前端图文教程

打包后端‘ 1,打开若依,点击右侧的Maven展开Maven管理,选择ruoyi>Lifecycle 先双击clean清除原本启动项目时生成的文件。然后点击package等待项目打包,切记要取消运行再打包 打包完成后会在ruoyi-admin>src>target里面…

RedisTemplate执行lua脚本及Lua 脚本语言详解

使用RedisTemplate执行lua脚本 在开发中,我们经常需要与Redis数据库进行交互,而Redis是一个基于内存的高性能键值存储数据库,它支持多种数据结构,并提供了丰富的命令接口。在某些情况下,我们可能需要执行一些复杂的逻…