Windows 下 MySQL 8.0 安装后配置与 Workbench 建库建表
简介《MySQL安装及使用教程》面向 MySQL 数据库零基础学习者与需要快速上手数据库管理工具的入门读者围绕 Windows 环境下 MySQL 的安装配置及日常使用展开。资源包共 1 个 docx 文件约 1.53MB以图文文档形式组织便于按章节查阅与跟练。内容覆盖安装包获取与安装过程、环境变量检查、服务启动与关闭测试以及 Workbench 连接配置、数据库与数据表创建、数据录入和 select、insert、update、delete 等基础 SQL 操作示例并配有相应界面截图辅助理解。已有 1455 人学习适合作为课程实验、自学入门或查阅基础语法的轻量参考资料也可帮助读者梳理 MySQL 从安装到简单增删改查的完整学习路径。1. MySQL 8.0 装在 Windows 上真正麻烦的是装完那一下MySQL 安装这件事绝大多数人卡住的地方在装完之后那几分钟而不在「下一步」按钮上。MySQL 数据库服务起没起来、服务名是不是还叫 mysql80、系统 Path 里那行 bin 目录有没有写上这三件事任意一件出问题命令行敲 mysql 就是「不是内部或外部命令」Workbench 点 Test Connection 就是 10061。我在实验室的公用机上见过同一套 MySQL 8.0 被重装三遍每次装到 Finish 就以为结束了结果第二天开机服务没自启连库都进不去。这篇按 Windows MySQL Installer 这条路径走一遍下载哪个包、安装向导里哪几个框必须停一下、Path 和服务怎么配、Workbench 建库建表怎么落地、增删改查怎么写不翻车最后给一套装完就能自查的验证顺序。第一次在 Windows 上装 MySQL 8.0 的人可以照着走装过但总在环境变量和服务名上反复的人也能对上号。2. 下载与 Installer 安装三个必须停一下的输入框MySQL 在 Windows 上的官方安装方式这几年基本稳定下来了走的是 MySQL Installer 这条路一个 msi 安装器负责下载、安装、配置、升级一条龙Server 本体、Workbench、连接器、示例库都从它里面勾。好处是不用自己去拼 zip 包和解压路径坏处是向导里有一大段是「一路 next 也能过」的而恰恰是这几步决定了后面环境变量、服务名、密码策略长什么样。先把下载路径走通浏览器打开https://www.mysql.com/downloads/顶部菜单点 Community再点下方的 MySQL on Windows页面里选中 MySQL Installer进入新页面后拉到最底端能看到两个安装包原文选的是第二个。这一步别急着点两个包的区别值得花三十秒看清楚。2.1 官网下载路径离线完整包和在线安装包别选反页面底部这两个 msi命名上就能区分开一个是mysql-installer-community-*.msi另一个是mysql-installer-web-community-*.msi后者名字里多一个 web。安装包体积特征安装时的行为适合什么情况mysql-installer-community明显更大组件已经在本地Execute 阶段基本不联网网络一般、要给多台机器装、装完还要拷给别人mysql-installer-web-community只有安装器本体Execute 阶段按勾选去线上拉组件网络稳定、只装这一台原文走的是第二个也就是在线安装包下载快、点开就能装。要注意的是它对网络很敏感Execute 阶段如果网断了会在列表里挂一堆红字。我一般的做法是机器能稳定连外网就用 web 包图省事机房的内网机器或者网络时好时坏的笔记本直接下第一个完整包一次几百兆换后面不用重来这笔账划算。点击下载后会跳到开始下载的页面直接点页面里的下载入口就行不需要注册账号也不需要填什么企业信息页面上那些登录框跳过即可。2.2 Setup Type 与组件勾选装包下载失败到底要不要管安装器起来之后第一个要停下来看的是 Choosing a Setup Type。默认给的是 Developer Default会把 Server、Workbench、各种语言的连接器、示例库、文档、甚至 Visual Studio 的运行时一起勾上。对只是想学 SQL 的人来说这个默认值偏重装完 C 盘少一大截而且任何一个组件拉取失败都会让整个 Execute 阶段停在半路。常见做法是选 Custom只勾两样MySQL Server版本选 8.0.x这是服务端本体必装MySQL Workbench图形客户端建库建表、跑语句都靠它其他的 Connector、示例数据库 sakila/world、文档、Excel 插件学语法阶段一律不勾。少勾一个组件就少一个可能标红的位置。选完进入 Execute 阶段安装器会按顺序把每个产品装一遍进度条下面是一个产品列表装成功打绿勾失败标红。这里就是原文那句话的出处——遇到装包下载失败可以不用管。原因是标红的通常是示例库、文档、附加连接器这类非必需项只要 MySQL Server 和 MySQL Workbench 这两行是绿勾服务端和客户端就已经落盘了功能上不缺东西。判断方法很简单看列表里这两个名字的状态是绿的继续往下走红色的那几行点开看一眼名字确认不是 Server 就行。注意如果标红的是 MySQL Server 本身就别往下点了直接退出去换完整离线包重来硬着头皮 next 只会得到一个没有服务端的空壳。2.3 密码、服务名、端口向导里最容易一路回车过去的三个框接下来是真正决定后面能不能连上的三个输入框向导在这一页停留时间很短很多人手一快就过去了。第一个是 root 账号的密码。MySQL 8.0 安装时会默认启用密码强度插件策略是 MEDIUM要求长度至少 8 位并且同时包含数字、大小写字母和特殊字符。如果在这里图省事填个123456点 Next 的时候会直接弹ERROR 1819 (HY000): Your password does not satisfy the current policy requirements装到一半退回去改密码。我一般就在这一步定一个固定格式比如「大写 小写 数字 符号长度 12」记在自己机器的一个文本文件里别指望记在脑子里。第二个是 Windows Service Name默认值就是MySQL80。这个名字后面会反复用到net start mysql80、net stop mysql80、sc query mysql80全都认它。默认值不用改改了也不影响功能但一定要记住自己改成了什么否则后面敲命令会一直报「服务名无效」。旁边那个 Start the MySQL Server at System Startup 建议勾上不然每次开机都要手动起一次服务第二天打开 Workbench 就是 10061。第三个是 Port默认 3306。只有本机已经装了别的 MySQL 实例、或者 3306 被别的程序占了才需要改成 3307 之类。改了端口后面 Workbench 建连接和命令行登录都要跟着带-P。装完之后别急着开 Workbench先在管理员权限的命令提示符里确认服务真的存在:: 查询 MySQL80 服务的状态RUNNING 才算起来了 sc query mysql80 :: 如果提示服务不存在把所有带 mysql 字样的服务列出来找真名 sc query type service state all | findstr /i mysqlsc query后面跟的是服务名输出里 STATE 那一行显示 RUNNING 就说明服务在跑。第二条命令是兜底用的忘了自己把服务名改成什么的时候用它在全量服务列表里搜关键字比在 services.msc 里一行行翻快得多。这两条命令都不需要进 MySQL纯粹是 Windows 层面的检查装完第一时间跑一遍能把「服务没装成功」和「服务装了但没起」两种情况分开。3. 环境变量与服务Path 里那行 bin 和 net start mysql80安装向导走完之后理论上环境变量已经自动配好了但实际上「理论上」这三个字在 Windows 上经常不成立。尤其是机器上装过旧版本 MySQL、或者装的时候自定义了安装目录的Path 里要么没有 MySQL 的 bin要么留着一条指向已经删掉的旧目录。表现出来的现象很一致服务在跑Workbench 能连但一开 cmd 敲mysql就是「不是内部或外部命令也不是可运行的程序」。这一章就干三件事确认 Path、搞清服务名的用法、用命令行登进去看一眼。3.1 手动补 Path三种路径写法与验证命令先确认mysql.exe到底在哪。默认安装路径是C:\Program Files\MySQL\MySQL Server 8.0\bin如果安装时改过目录就得按实际路径来。装的是 8.4 或者 9.x路径里的版本号段也要跟着换这一点很多人抄教程抄翻车——教程写 8.0自己装的是 8.4路径照抄过去必然无效。:: 看当前系统能不能找到 mysql能找到会打印出完整路径 where mysql :: 看 Path 变量里有没有 MySQL 相关目录 echo %PATH% | findstr /i MySQL第一条where mysql是最终判据它直接告诉你当前 cmd 会话里mysql解析到哪个 exe。第二条是查 Path 里有没有这一条findstr /i表示忽略大小写匹配。两条都空就说明 Path 确实没配上。补 Path 的路径是Win R 输入sysdm.cpl回车高级选项卡 → 环境变量 → 下方「系统变量」里选中 Path → 编辑 → 新建 → 粘贴C:\Program Files\MySQL\MySQL Server 8.0\bin→ 一路确定。这里有两个细节值得说一是要改系统变量而不是用户变量否则换个账号登录又找不到二是新建完必须关掉所有已经打开的 cmd 窗口重新开一个Path 是进程启动时读取的老窗口不会自己刷新。还有一种更隐蔽的情况Path 里配了但配在了用户变量里而当前是用管理员身份开的 cmd。管理员提权后的进程环境和普通用户环境不完全一致偶尔会读不到用户级 Path。遇到这种「明明配了却不生效」的玄学问题把同一条路径在系统变量里也加一份基本就解决了。提示Path 里不要出现两条指向不同版本 MySQL bin 的路径。谁在前面谁生效where mysql会把所有命中的路径按顺序列出来看到两条不同版本的时候删掉旧的那条。3.2 服务名不是固定的net start / net stop / sc query服务这块原文给的两条命令是全篇用得最频繁的:: 启动 MySQL 服务mysql80 是安装时填的服务名 net start mysql80 :: 停止 MySQL 服务 net stop mysql80这两条命令必须在管理员权限的命令提示符里执行普通 cmd 会报「发生系统错误 5拒绝访问」。net start后面的参数既可以是服务名 MySQL80也可以是显示名称Windows 两个都认。如果服务名里有空格要用英文双引号包起来比如net start MySQL 8.0。失败最常见的两种报错要分清楚服务名无效—— 名字不对。要么安装时改过服务名要么压根没装成服务。用上一节那条sc query type service state all | findstr /i mysql找真名。发生系统错误 1067进程意外终止—— 名字对了但服务起不来。这种一般是数据目录损坏或者 my.ini 配置有问题去安装目录下的Data文件夹看.err结尾的错误日志最后几十行一般能直接指出原因。服务的启动类型也顺手确认一下。sc qc mysql80会打印出 START_TYPE显示 AUTO_START 才是开机自启显示 DEMAND_START 就是手动启动。装的时候没勾 Start the MySQL Server at System Startup这里就会是手动改回来用sc config mysql80 start auto注意等号后面必须有一个空格这是sc命令的老规矩漏了空格会报参数错误。3.3 命令行登录与字符集初检服务起来之后用 root 账号登录:: -u 后面直接跟用户名-p 后面不要跟密码 mysql -uroot -p-u和用户名之间可以不留空格-p后面千万不要直接跟密码比如-p123456那样密码会明文留在命令历史和屏幕回滚里而且下次别人按上箭头就能看见。正确做法是只写-p回车之后在弹出的Enter password:后面输入输入过程不回显这是正常的。登进去之后先跑三条语句把环境摸清楚-- 确认连的是哪个版本避免连到机器上残留的旧实例 SELECT VERSION(); -- 列出所有数据库后面建好的 db_2 应该出现在这里 SHOW DATABASES; -- 看服务端的字符集配置中文乱不乱码主要看这几项 SHOW VARIABLES LIKE character_set_%;SELECT VERSION()在同时装过 5.7 和 8.0 的机器上特别有用能立刻确认自己连的是哪一个。SHOW DATABASES里默认会有information_schema、mysql、performance_schema、sys四个系统库不要手动去改它们。字符集那一条会列出一串变量重点看character_set_server和character_set_databaseMySQL 8.0 默认应该是utf8mb4如果看到latin1或者utf8后面存中文迟早出问题建库的时候必须显式指定 utf8mb4。退出用exit或者quit\q也行三个是等价的。4. Workbench 落地从建连接、建库到 student 表增删改查命令行能登进去说明服务端这一层已经通了。但真要做课程设计、写个小系统、给别人演示表结构纯命令行还是不够直观Workbench 就是补这一块的可视化建库建表、网格里直接录数据、SQL 编辑器带补全和高亮。它的安装包在 Installer 里已经跟着 Server 一起装好了开始菜单里搜 MySQL Workbench 就能开。这一章按「建连接 → 建库 → 建表 → 录数据 → 写四条语句」的顺序走完每一段都给出对应的 SQL 等价写法习惯敲命令的人可以直接跳过界面部分。4.1 新建连接与 Test Connection 的三种报错打开 Workbench 首页是 Welcome to MySQL Workbench中间一片是 MySQL Connections点旁边那个加号新建连接弹出的窗口要填的东西不多但每一项都对得上后面能不能连上字段填什么说明Connection Name自定义比如 local-80只是显示名随便起但建议把端口或版本带进去Hostname127.0.0.1本机就用回环地址别填 localhost某些环境会解析到 IPv6 上导致连不上Port3306安装时改过端口这里必须跟着改Usernameroot安装时创建的管理员账号Password点 Store in Vault 后输入存起来省得每次输公用机别勾Default Schema留空建库之后再回来指到 db_2填完先点 Test Connection这一步不通过就别急着 OK。三种报错按出现频率排Cant connect to MySQL server on 127.0.0.1 (10061)—— 服务没起或者端口不对。回上一章net start mysql80。Access denied for user rootlocalhost (using password: YES)—— 密码错了。注意这里是 localhost走的是本机 socket/命名管道和 127.0.0.1 走 TCP 是两条不同路径偶尔会出现一个能连一个不能。Authentication plugin caching_sha2_password cannot be loaded—— 客户端版本比服务端老不认 8.0 的默认认证插件。用 Installer 一起装的 Workbench 不会遇到单独下过一个旧版 Workbench 的才会。Test Connection 通过了就点 OK首页会多出一个连接卡片双击进入操作界面。4.2 建库 db_2 与建表 student字符集和主键进入 Workbench 之后左侧是 Navigator上半部分是 Schemas 列表下半部分是 Information。建库有两个入口工具栏上那个 Create a new schema 的图标或者直接在 Schemas 区域右键 Create Schema。名字按原文就叫db_2字符集选utf8mb4排序规则选utf8mb4_0900_ai_ci点 Apply会弹一个 SQL 预览窗口再点一次 Apply 才真正执行。这一步的 SQL 等价写法是-- 建库显式指定 utf8mb4避免用默认值踩到 latin1 CREATE DATABASE IF NOT EXISTS db_2 DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_0900_ai_ci; -- 切到目标库后面所有建表语句都落在这里 USE db_2; -- 建学生表四个字段对应原文的 idstudent / name / age / addr CREATE TABLE student ( idstudent INT NOT NULL COMMENT 学号主键, name VARCHAR(20) NOT NULL COMMENT 姓名, age INT DEFAULT NULL COMMENT 年龄, addr VARCHAR(50) DEFAULT NULL COMMENT 地址, PRIMARY KEY (idstudent) ) ENGINE InnoDB DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_0900_ai_ci;几个参数值得说清楚。utf8mb4是 MySQL 8.0 的真·UTF-8一个字符最多占 4 字节能存 emoji 和生僻字老写法utf8实际是utf8mb3最多 3 字节存不进去就变问号或者直接报错这是中文乱码最常见的一个来源。utf8mb4_0900_ai_ci是 8.0 新增的排序规则ai表示重音不敏感ci表示大小写不敏感做普通业务够用。ENGINE InnoDB是 8.0 的默认引擎支持事务和行锁不用改。idstudent上的PRIMARY KEY保证学号唯一NOT NULL保证不会插进去一条没学号的记录——主键本身隐含 NOT NULL写出来是为了读代码的人一眼看清。在图形界面里建表对应的是右键 Tables → Create Table中间填表名 student下方表格里一行一行加字段idstudent那一行的 PK 和 NN 都勾上name勾 NNage和addr只勾 NN 不勾最后一列 Default 留空。填完点 Apply同样会先弹 SQL 预览扫一眼没问题再确认。注意建表时如果字符集下拉框默认停在utf8mb3或者latin1一定要手动改掉。表建完再改字符集需要 ALTER TABLE字段多的时候很麻烦。4.3 Select Rows 直接录数据与 Apply 的含义表建好之后Navigator 里展开 db_2 → Tables能看到 student。右键它选 Select Rows - Limit 1000右侧会出一块结果网格表头就是四个字段名最下面一行是空的可以直接点进去填值。填完一行按 Tab 会往右走全部填完点右下角的 Apply会弹出一个窗显示即将执行的 INSERT 语句确认后再点 Apply 才写进数据库。这一步的等价语句很直白-- 插入一条学生记录列名和值一一对应 INSERT INTO student (idstudent, name, age, addr) VALUES (3, 赵六, 21, 城东街道);网格里录数据和敲 INSERT 的差别在于网格模式默认把整张表的数据拉出来编辑点 Apply 的时候是对每一行变化生成一条语句如果表里有几万条数据这个操作会非常慢甚至把 Workbench 卡住。所以 Select Rows 适合小表验证、演示、临时改两个值真往业务表里灌数据还是要走 INSERT 或者 LOAD DATA。另外 Limit 1000 这个后缀就是字面意思只取前 1000 行看不到的不代表不存在别以为表是空的。4.4 四条语句select、insert、update、delete 的写法与参数Workbench 里点工具栏的 SQL 加号可以开一个查询标签页也可以直接点菜单 File → New Query Tab写语句的地方就有了。下面四条是最小可用集合每条都给了注释。-- 查全表查字段多的时候别用 *写清楚要哪几列 SELECT * FROM student; SELECT idstudent, name FROM student WHERE age 20; -- 增列名个数必须和 values 个数一致顺序也要对得上 INSERT INTO student (idstudent, name, age, addr) VALUES (4, 孙七, 22, 城西街道); -- 改where 条件决定改哪几行漏了就是全表 UPDATE student SET age 19 WHERE idstudent 3; -- 删同样是 where 决定删哪几行漏了就是清空 DELETE FROM student WHERE idstudent 3;SELECT *在调试时方便但正式写法应该把列名写全一是减少不必要的数据传输二是表结构后面加字段时不会把业务代码带崩。WHERE age 20里的比较运算符除了还有、、、!、BETWEEN ... AND ...、IN (...)、LIKE 张%够覆盖日常查询。INSERT的列名列表可以省略省略时 values 必须按建表时的字段顺序给全包括那些允许 NULL 的字段。这个写法极其脆弱表结构一改就报错不建议用。UPDATE的完整语法在原文里给得比较全展开是这样UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1 expr1 [, col_name2 expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count];LOW_PRIORITY让这条更新排队等别的读操作做完再执行MyISAM 时代有用InnoDB 下基本不用。IGNORE表示碰到唯一键冲突时不中断、跳过冲突行继续属于危险开关默认别加。ORDER BY配合LIMIT可以做「按某种顺序改前 N 条」比如ORDER BY idstudent LIMIT 10不写 ORDER BY 只写 LIMIT 时改哪 10 条是不确定的。WHERE是唯一能限制影响范围的东西这一条后面还会单独拎出来讲。DELETE FROM tb (where)这个写法里括号是语法说明用的实际敲的时候不带括号。想清空整张表又要保留表结构用TRUNCATE TABLE student比DELETE FROM student快得多区别是 TRUNCATE 不能回滚、不触发 DELETE 触发器、自增计数器会重置。Workbench 里执行语句有个快捷键 Ctrl Enter执行光标所在那一条Ctrl Shift Enter 执行全部。结果默认出在下方 Result Grid旁边还有 Output 面板报错信息都在那一栏里红字第一行通常就是错误码和原因别只看 Result Grid 是空的就以为语句没生效。5. 常见问题排查五条踩坑记录每条都能对上号下面这五条是我在不同机器上反复遇到的按「现象 → 原因 → 解决」记一遍出问题的时候直接对号入座比从头推理快。5.1 现象cmd 里敲 mysql 提示「不是内部或外部命令」原因基本只有三种Path 里根本没加 MySQL 的 bin 目录、加的是旧版本残留路径、或者加了但当前 cmd 窗口是在改 Path 之前打开的。解决顺序是先用where mysql看能不能解析到解析不到就去系统变量 Path 里核对那行C:\Program Files\MySQL\MySQL Server 8.0\bin存不存在、版本号段对不对改完关掉所有 cmd 重开一个再试。还有一种情况是加了但排在别的 MySQL 路径后面where mysql会列出多条把旧的那条删掉或者把新的挪到前面。5.2 现象net start mysql80 报「服务名无效」原因有两种安装时把服务名改成了别的或者装的时候压根没走到配置服务那一步Execute 阶段中断过。先去services.msc里按名称排序找 MySQL 开头的服务或者用sc query type service state all | findstr /i mysql全量搜一遍找到真实名字之后再用net start 真实名字。如果一条都搜不到说明服务确实没装回 Installer 重新走一遍 Server 的配置步骤不用整个卸载重来Installer 里有 Reconfigure 入口。5.3 现象安装向导报 ERROR 1819 密码策略不满足原因就是密码太简单没达到默认的 MEDIUM 策略要求长度 8 位以上同时包含数字、大小写字母、特殊字符。解决时再设计一个符合规则的密码即可比如「首字母大写 单词 两位数字 一个符号」。不建议为了图方便去改密码策略改法是在配置阶段把 validate_password 组件卸掉或者把 policy 调成 LOW但这样一来整个实例的密码强度都没了保障后面接真实项目容易出问题。5.4 现象Installer 的 Execute 阶段卡在某个产品下载失败原因是在线安装包需要现场联网拉组件网络抖动、代理拦截、临时目录权限不足都会让某一项下载中断。先看标红的产品名如果是示例库、文档、Connector 这类直接跳过不影响使用Server 和 Workbench 装完就能干活。如果反复失败换第一条那个完整离线包重新装或者把 Installer 以管理员身份重启一次让它有权限清自己的临时缓存目录。已经装成功的组件不会重复装重来一次成本不高。5.5 现象update 或 delete 执行完整张表的数据全变了原因就一个字where 写漏了或者 where 条件写成了永远为真的表达式比如WHERE idstudent idstudent。这条是血泪经验。我现在执行任何 UPDATE 或 DELETE 之前都会先把同样的 where 条件套进 SELECT 跑一遍看一眼返回行数和内容对不对确认无误再把 SELECT 改成 UPDATE/DELETE。行数超过预期就停下来重新想条件。另外在 Workbench 里默认是自动提交模式语句一执行就落盘没有后悔药正式环境里应该显式开事务START TRANSACTION;执行完先SELECT验证没问题再COMMIT;有问题直接ROLLBACK;。这个习惯养成了能省掉很多半夜被叫起来恢复数据的场面。6. 装完怎么验证三条命令加一张自查表装完 MySQL 最容易犯的错是「看到 Workbench 能打开就以为好了」。Workbench 打开只是客户端起来了跟服务端通不通是两回事。我一般按下面三步走一遍全程两三分钟能把绝大多数隐患提前暴露出来。第一步用管理员权限开一个命令提示符跑服务状态:: 服务必须是 RUNNINGSTART_TYPE 应该是 AUTO_START sc query mysql80 sc qc mysql80第一条看当前状态STATE 里显示 RUNNING 才算在跑。第二条看启动类型AUTO_START表示开机自启显示DEMAND_START就说明装的时候没勾自启用sc config mysql80 start auto补上。这两条都不需要进 MySQL纯粹是 Windows 层面的确认。第二步命令行登录并确认版本:: 登录之后能进到 mysql 提示符就说明认证链路通了 mysql -uroot -p-- 版本、当前库、字符集三件套 SELECT VERSION(), DATABASE(), character_set_server;VERSION()应该返回 8.0.xDATABASE()在没USE之前是 NULLcharacter_set_server应该是 utf8mb4。三项都对说明服务端配置没问题。第三步把建库建表这条链路完整跑一遍再删掉验证写权限-- 建一个临时库建表插一条查完就删全程不到十秒 CREATE DATABASE verify_tmp DEFAULT CHARACTER SET utf8mb4; USE verify_tmp; CREATE TABLE t (id INT PRIMARY KEY, v VARCHAR(10)); INSERT INTO t VALUES (1, 测试); SELECT * FROM t; DROP DATABASE verify_tmp;这条链路走通意味着建库、建表、写入、查询、删除五类权限都正常中文也没乱码测试两个字能原样查出来就说明字符集对了。DROP DATABASE收尾不留垃圾。懒得记命令的话对着这张表逐项打勾也行检查项期望结果不通过时先看哪服务状态RUNNING服务名、数据目录、.err 日志启动类型AUTO_STARTsc config 补自启where mysql输出一条 bin 下的路径系统变量 Pathmysql -uroot -p进入 mysql 提示符密码、端口、服务是否在跑SELECT VERSION()8.0.x是否连到了旧实例character_set_serverutf8mb4建库时是否显式指定Workbench Test ConnectionSuccessfully made the connection10061 查服务1045 查密码建表插入中文查询结果原样显示库/表/连接三处字符集从那以后我每次装完 MySQL不管多急都会先开一个管理员 cmd 敲net start mysql80再mysql -uroot -p进去看一眼SELECT VERSION()和字符集最后在 Workbench 里点一次 Test Connection。整套动作两分钟省掉的是后面半小时的猜和重装。上面这些命令、参数和建表语句我都对着同一份笔记整理过照着敲一遍基本就能把环境立起来。希望帮到你。本文还有配套的精品资源点击获取