net start mysql时显示“mysql服务无法启动 服务没有报告任何错误”

解决方法:

1.在安装目录下添加my.ini文件:内容如下

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8

[mysqld]
#设置3306端口
port=3306
# 服务端使用的字符集默认为8比特编码的latin1字符集
character_set_server=utf8
    
#解压目录
basedir=D:\Program Files (x86)\MySQL\mysql-5.7.14-winx64
#解压目录下data目录
datadir=D:\Program Files (x86)\MySQL\mysql-5.7.14-winx64\data

# 允许最大连接数
max_connections=200
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[WinMySQLAdmin]
D:\Program Files (x86)\MySQL\mysql-5.7.14-winx64\bin\mysqld.exe

注意,不要手动添加data文件夹(切记)。

2.用管理员身份运行cmd
利用cd命令到达 mysql的bin文件夹下
执行 mysqld --initialize
(此时会发现安装目录下出现data文件夹,若是没出现就用 mysqld --initialize-insecure --user=mysql

然后net start mysql 发现成功了。【若是不成功,检查my.ini 中路径等,生成的data文件夹,重新生成即可(执行 mysqld --initialize)】

执行mysqld --install 注册服务

执行net start mysql 启动服务

服务启动成功之后,就可以登录了,输入mysql -u root -p(第一次登录没有密码,直接按回车过),登录成功!

注意:
在安装mysql5.7版本时,经常会遇到mysql -u root -p直接回车登录不上的情况,原因在于5.7版本在安装时自动给了一个随机密码,在data目录下搜索*.err,以文本形式打开才能看到如下内容:
**例如:**
2016-08-28T16:28:54.118806Z 1 [Note] A temporary password is generated for root@localhost: w<raveOS&8Or

localhost: 后面即是密码,
`mysql -u root -p`  输入密码  w<raveOS&8Or
mysql>SET PASSWORD = PASSWORD('123456'); 设置新密码

参考文章:

http://blog.csdn.net/frt007/article/details/50184143

http://www.jb51.net/article/83636.htm

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐