解决windows的mysql无法启动 服务没有报告任何错误的经验。
相信很多人都遇到过安装Mysql的时候出现各种各样的问题,教大家解决window下mysql服务没有报告任何错误的情况下无法启动 的问题。本文所用的mysql版本是5.7以上版本,解决方法:
工具/原料
-
window
-
mysql5.7
方法/步骤
-
注意点1:你在看网上的教程配置完my.ini(自己的mysql配置文件)后不能自己创建一个data文件夹。
-
好多人,包括楼主也是,配置完datadir属性后觉得这个存储数据的文件夹路径没有呀,自己动手建一个呗。错就错在这里,不能动手建,你自己动手建的data文件夹里怎么可能有mysql启动所需要的表结构配置文件呢?
-
问题2:在使用net start msql的时候提示“服务报告没有任何错误”。
安装完mysql服务后迫不及待的开启mysql服务,在mysql5.7以上版本中默认没有一个data目录,即没有初始化服务。需要先初始化mysql才可以启动服务,否则会报 “服务没有报告任何错误”,启动失败呗。
正确的步骤是:先在mysql的bin目录下执行mysqld --initialize-insecure (不设置root密码,建议使用)命令,第一次执行这个命令会等待的时间稍微长了一些,并且控制台没有任何返回结果。可以看到mysql的根目录下会多出一个data文件夹,里面一堆文件。
-
问题3:没有先执行mysqld --initialize-insecure (不设置root密码,建议使用),而是先执行net start mysql了,启动失败,mysql会自动创建一个data文件夹,并在里面初始化一些文件,在再次执行mysqld - initialize的时候并没有把data文件夹删除。错误信息如下图:
-
此时的解决方案是:删除data文件夹,然后执行mysqld - initializemysqld --initialize-insecure (不设置root密码,建议使用),再启动mysql。
-
问题4:mysql安装完了,可高兴的输入“mysql或者mysql -hlocalhost -uroot -p”一回车,居然没有进去,出了个“ERROR 1045 Access denied for user 'xxx' NO”
-
原因是新版的mysql为了安全性,默认是有密码的。
以下是新版本MySQL的临时密码获取方式:
1.安装数据库并初次启动服务后,你需要首先关闭服务(资源管理器或者“我的电脑”-“服务”关闭)
2.mysqldata目录下,生成了一个.err文件(等同linux下的log日志文件,此文件会被mysql服务占用)
3.使用写字板或者word打开,定位到temporary password
4.记下密码,重新启动MySQL服务,并进入CMD命令行,在此使用mysql -u root -p登陆,键入密码
5.进入数据库后,使用set password for root@localhost = password('你的密码')或者(SET PASSWORD = PASSWORD('new password');); 重置登陆密码
此时不是使用update,update方法为跳过验证更新用户数据。
6.提示Query OK,充值成功,之后你可以尝试重新登录