启动MySQL5.7服务无法启动或Table 'mysql.plugin' doesn't exist
首先说一下我这个是mysql5.7.16免安装版,不过这个问题对于5.7版本应该都适用。
问题重现:
安装过程也说一下吧:
1.将下载的压缩文件解压到指定目录,
我的是:E:\program\mysql-5.7.16-winx64
2.配置PATH环境变量,在最后追加bin路径:
;E:\program\mysql-5.7.16-winx64\bin
3.CD到bin目录执行mysqld去安装window服务:
E:\program\mysql-5.7.16-winx64\bin>mysqld --install mysql5.7
4.启动服务:
E:\program\mysql-5.7.16-winx64\bin>net start mysql5.7
mysql-5.7 服务正在启动 .
mysql-5.7 服务无法启动。
服务没有报告任何错误。
请键入 NET HELPMSG 3534 以获得更多的帮助。
原因:
mysql在启动服务时会去找一些系统表,例如:
mysql5.7: Table 'mysql.plugin' doesn't exist
这个就是启动时候日志的报错(如果你已经创建了data文件夹,在data文件夹的用户.err文件,例如我的就是:Dylan.err)。其实我们在创建服务后缺少了一步,就是初始化mysql。
解决方案:
1.在安装目录创建data文件夹(如果已有,请删除里面所有文件),用于存放mysql初始化数据文件。
2.执行初始化mysql,
E:\program\mysql-5.7.16-winx64\bin>mysqld --initialize
完毕后会看到data文件夹下面生成了一堆文件:
3.再次启动服务:
这是一个坑!!!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构