安装解压版MySQL5.76及以上版本 出现服务正在启动-服务无法启动的问题
As
of MySQL 5.7.6, the Zip Archive no longer includes a data
directory.
To initialize a MySQL installation by creating the data directory and populating the tables in the mysql system database, initialize MySQL using either --initialize
or --initialize-insecure
.
For additional information, see Section
2.10.1.1, “Initializing the Data Directory Manually Using mysqld”.
大致意思是说在MySQL5.76之后,解压版不再包含一个data目录了,初始化安装MySQL需要使用 --initialize
或者--initialize-insecure指令,然后我就尝试了一下。
方法:
1.卸载掉以前安装的MySQL服务,如图2(如果在命令行窗口执行net start mysql出现图1提示的请忽视这一步,直接下一步)
图1
切换到自己MySQL根目录的bin目录下并执行mysqld --remove.
图2
2.检查一下自己的my.ini是否配置正确,如果怕出错可以参考我的,但是记得把路径改为你自己的路径。如果之前没有配置过,在MySQL安装目录根目录下新建一个文本文件,参照下面的写法配置。(我的MySQL目录是D:\MySoftWare\mysql-5.7.9-winx64)
[mysqld]
#basedir代表自己MySQL的安装根目录
basedir = D:\\MySoftWare\\mysql-5.7.9-winx64
#datadir代表自己MySQL的数据库保存的目录,如果没有在MySQL安装的根目录下新建一个data文件夹
datadir = D:\\MySoftWare\\mysql-5.7.9-winx64\\data
#port代表端口号
port = 3306
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
3.在dos窗口下将目录切换到MySQL的根目录,然后执行bin\mysqld --defaults-file=my.ini --initialize-insecure(最好是复制我的,不然容易打错)。
4.执行bin\mysqld --install,进行MySQL服务的安装。
5.最后再尝试启动MySQL服务,在命令行窗口执行net start mysql,看看自己的MySQL服务是否能成功启动了!(Enter password那里,初始密码为空,直接回车就行)