Windows 安装 MySQL
Windows 10/11 安装 MySQL 8.0:检查旧版、卸载与清 Path、Server only 安装、配置环境变量、验证登录与报错处理。
本页目录
本篇只做一件事:让电脑上出现可用的 MySQL,并在终端里看到 mysql>。步骤按「检查 → 卸载旧版(可选)→ 安装 → Path → 验证 → 排错」写,尽量可点、可复制。
系列:MySQL 入门到查询 · 第 2 / 17 篇(第 2 天 · 4 月 22 日)
上一篇:数据库是什么
下一篇:登录与库表结构
总目录:系列索引
环境说明
| 项目 | 说明 |
|---|---|
| 系统 | Windows 10 / 11 |
| 安装包 | MySQL Community 8.0 MSI(mysql-installer-community-8.0.x.x.msi) |
| 权限 | 管理员权限 |
| 密码 | 安装时自己设定;仅限本机实验可设简单密码并自己记牢 |
安装包来源(自行准备其一):
- MySQL 官网下载(Community / MySQL Installer for Windows)
- 课程或同事提供的离线 MSI
下文假设安装包在
D:\,你的路径可以不同。
0. 为什么一定要会「命令行登录」
图形工具(Workbench 等)以后可以装,但:
- 考试、远程服务器、排错,很多只有终端
- 本系列命令均可在
mysql>提示符下完成 - 先把
mysql -uroot -p打通,后面每一课都不会卡在环境上
1. 安装前:检查电脑里有没有 MySQL
Win + R → 输入 cmd → 回车:
mysql -uroot -p
回车后提示输入密码(若曾设置过就输入)。
| 结果 | 含义 | 下一步 |
|---|---|---|
欢迎信息,最后是 mysql> | 已安装且能用 | 可跳过安装,直接读验证 |
| 不是内部或外部命令 | 未安装,或 Path 未配置 | 继续安装或修 Path |
| 密码错误 | 已安装但密码不对 | 见文末「重设密码」 |
看懂两种提示
成功(片段):
Welcome to the MySQL monitor. Commands end with ; or \g.
mysql>
失败(片段):
'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件。
这说明:系统找不到名叫 mysql 的程序——要么没装,要么装了但没有告诉 Windows 它在哪(Path)。
退出 MySQL
在 mysql> 下三选一:
quit
exit
\q
然后会回到普通的 C:\...> 提示符。
2. 卸载旧版(建议重装前做)
- 开始菜单 → 设置(齿轮)
- 应用 → 已安装的应用(措辞因系统版本略有差别)
- 搜索
MySQL - 依次卸载相关项(常见:MySQL Installer、MySQL Server 8.0 等)
2.1 清理 Path 环境变量
- 右键「此电脑」→ 属性
- 高级系统设置 → 环境变量
- 系统变量 → 选中
Path→ 编辑 - 若存在
C:\Program Files\MySQL\MySQL Server 8.0\bin
则删除 - 连续 确定 保存
2.2 删除残留文件夹(存在才删)
C:\ProgramData\MySQL
C:\Program Files\MySQL
C:\Program Files (x86)\MySQL
C:\ProgramData可能隐藏:资源管理器「查看」→ 显示隐藏的项目。只删 MySQL 相关目录,勿误删其他软件。
2.3 为什么要卸干净?
旧版本残留可能导致:安装向导检测到「已有实例」、端口被占用、命令行调用的是旧 mysql.exe。干净重装能减少后面一整周的玄学报错。
3. 安装 MySQL 8.0(Server only)
- 双击 MSI,例如
D:\mysql-installer-community-8.0.37.0.msi - 安装类型选 Server only(本机学 SQL 足够)→ Next
- 按界面继续;默认安装路径通常即可
- 到配置密码时,输入两次你的 root 密码(自己记牢)
- Execute / Finish 直至完成
默认安装目录(未改路径时)常见为:
C:\Program Files\MySQL\MySQL Server 8.0
3.1 bin 目录里有什么
| 文件 | 用途 |
|---|---|
mysql.exe | 登录、执行 SQL |
mysqldump.exe | 备份导出(第 16 天会用) |
完整路径示例:
C:\Program Files\MySQL\MySQL Server 8.0\bin
后面配置 Path,填的就是这一串(一定要到 \bin)。
3.2 安装时 Starting Server 出现「红 ×」
少数电脑在服务启动步骤失败,可尝试:
- 右键「此电脑」→ 管理
- 服务和应用程序 → 服务
- 找到 MySQL80 → 双击
- 登录身份选 本地系统账户 → 确定
- 回安装界面 Back,再 Execute
- Finish / Next 完成
再回到「服务」列表,确认 MySQL80 为正在运行;若不是,右键启动。
4. 配置 Path 环境变量
目的:在任意 cmd 窗口、任意当前目录下,都能直接敲 mysql。
- 右键「此电脑」→ 属性
- 高级系统设置 → 环境变量
- 系统变量 →
Path→ 编辑 → 新建 - 粘贴:
C:\Program Files\MySQL\MySQL Server 8.0\bin
- 确定 三遍,关闭所有设置窗口
- 重新打开一个新的 cmd(旧窗口读不到刚改的 Path)
Path 是什么(小白版)
Windows 在你输入命令时,会按 Path 里列的文件夹顺序去找「同名 .exe」。
- 只写了
C:\Program Files\MySQL\MySQL Server 8.0→ 找不到mysql.exe(它在 bin 里) - 写对了
\bin→ 一敲mysql就能找到
5. 验证安装
新开 cmd:
mysql -uroot -p
输入密码。成功进入 mysql> 后:
select version();
应显示类似 8.0.x 的版本号(结尾记得有分号 ;)。退出:
\q
6. 失败排查
6.1 不是内部或外部命令
按顺序查:
- Path 是否是 bin 那一层
- 路径拼写是否与本机一致(版本号未必是 8.0.37)
- 是否用了新打开的终端
- 下列文件是否存在:
C:\Program Files\MySQL\MySQL Server 8.0\bin\mysql.exe
快速验证「是不是 Path 的问题」:
资源管理器进入 bin 目录 → 地址栏输入 cmd 回车 → 再执行:
mysql -uroot -p
这样能进 mysql>,说明只是 Path 没配好。
6.2 服务没启动
Win+R → services.msc → 找到 MySQL80
状态应为「正在运行」。没有则右键启动;启动失败看「登录」标签是否为本地系统账户(对应上文 3.2)。
6.3 密码忘了 / 安装时报红后状态混乱
分两种情况:
A. 仍能进入 mysql>(旧密码或空密码偶尔能进):
alter user 'root'@'localhost' identified by 'YourPass123';
看到 Query OK 后 \q,再用新密码登录验证。
B. 完全进不去(真·忘记密码):
入门环境可参考思路(具体步骤因版本而异,考试以题面为准):
- 停止 MySQL 服务
- 以跳过权限表方式启动 mysqld(或按官方文档用初始化文件)
- 无密码进入后执行
ALTER USER ...设新密码 - 立刻正常重启 MySQL 服务并验证
生产与考试请以官方文档/监考要求为准;本系列实验请自行记住安装时设置的密码。
推荐登录:
mysql -uroot -p,回车后再输密码,避免密码出现在命令历史里。
7. 今天练习清单(约 20 分钟)
- 新 cmd 中
mysql -uroot -p能进入 -
select version();能看到 8.0.x -
\q能退出 - 资源管理器能找到 bin 下的
mysql.exe - 再开一个 cmd,确认仍可登录(Path 对新窗口生效)
期望:任意目录下 mysql 命令可用;能看到 mysql>。
速查表
| 目标 | 做法 |
|---|---|
| 检查/登录 | mysql -uroot -p |
| 看版本 | select version();(分号别丢) |
| 退出 | quit / exit / \q |
| 安装目录 | C:\Program Files\MySQL\MySQL Server 8.0 |
| 必配 Path | ...\MySQL Server 8.0\bin |
| 服务名 | 常见 MySQL80 |
| 找不到命令 | Path + 新开终端 + 确认 bin |
常见错误
易错:Path 配完仍用旧 cmd。请新开终端。
易错:Path 漏了\bin,或多写了反斜杠。
易错:把「安装包所在路径」配进 Path——应配安装后的 bin 目录。
易错:SQL 语句没加分号;,回车后一直->等待输入。
安全:实验密码简单可以;生产密码要强,且不要写进博客。
小结
- 干净重装:卸载 + 清 Path + 删残留 → Server only 安装。
- 把 bin 加入系统 Path,并用新 cmd 验证。
mysql -uroot -p进入,select version();确认版本,\q退出。- 下一篇把登录命令拆开讲清,并建立「库表行列 + 数据类型」的地图。