winx64版本下mysql8.0.11安装时MySQL服务正在启动到MySQL服务无法启动的问题分析
按照操作网上常规步骤在mysql的根目录下编写my.ini并创建data文件夹
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=d:\mysql-8.0.11-winx64
# 设置mysql的数据的存放目录
datadir=d:\mysql-8.0.11-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=innodb
故障现象
1.d:\mysql-8.0.11-winx64\bin>net start mysql
mysql 服务正在启动 .
mysql 服务无法启动。
服务没有报告任何错误。
请键入 net helpmsg 3534 以获得更多的帮助。
2.进一步错误
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.
解决方案:
1.删除自己手动创建的data文件夹;
2.管理员权限cmd的bin目录下,移除已错误安装的mysqld服务;
d:\mysql-8.0.11-winx64\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 服务已经启动成功。
执行完成;