Failed to find valid data directory

故障现象

D:\mysql-8.0.11-winx64\bin>net start mysql

MySQL 服务正在启动 .
MySQL 服务无法启动。

服务没有报告任何错误。

请键入 NET HELPMSG 3534 以获得更多的帮助。 

进一步查错

为了查看更详细的报错信息
进一步找到mysql根目录下data文件夹里的(计算机名).err文件打开后

D:\mysql-8.0.11-winx64\bin>mysqld --console
2018-07-18T13:21:30.946001Z 0 [System] [MY-010116] [Server] D:\mysql-8.0.11-winx64\bin\mysqld.exe (mysqld 8.0.11) starting as process 11760
2018-07-18T13:21:30.983631Z 1 [ERROR] [MY-011011] [Server] Failed to find valid data directory.
2018-07-18T13:21:30.986677Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2018-07-18T13:21:30.988397Z 0 [ERROR] [MY-010119] [Server] Aborting
2018-07-18T13:21:30.990846Z 0 [System] [MY-010910] [Server] D:\mysql-8.0.11-winx64\bin\mysqld.exe: Shutdown complete (mysqld 8.0.11) MySQL Community Server - GPL. 
  • Data Dictionary initialization failed看到这段,说明data目录初始化出错。

解决方案:

1.删除根目录下的data文件夹内的所有文件;
2.移除已错误安装的mysqld服务;

D:\mysql\bin>mysqld -remove MySQL
The service doesn't exist! 

3.在CMD的bin目录下执行一下命令初始化

mysqld --initialize-insecure 

会发现程序在mysql的根目录下自动创建了data文件夹以及相关的文件
4.bin目录下执行

mysqld -install
Service successfully installed. 

5.bin目录下执行mysql服务启动

net start mysql
MySQL 服务正在启动 ..
MySQL 服务已经启动成功。 


玩咖指针 2020-09-12 14:55:40