原文:
http://mp.weixin.qq.com/s/tVReCJsd6a64Zgftq5zmEQ
【参考】
- https://*.com/questions/489119/mysql-error-1045-access-denied
- http://jingyan.baidu.com/article/3ea51489e6cfbe52e61bba25.html
- https://zhidao.baidu.com/question/1603863845338636507.html
- https://zhidao.baidu.com/question/1690528815316881028.html
【问题】
- 操作系统:windows 10
- MySQL版本:MySQL Server 5.6
- 问题描述如下:
由于当初MySQL设置了root密码,后来忘记了密码,尝试登陆数据库的时候,出现错误:
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
【解决】
关闭mysql服务,并关闭与mysql有关的所有进程
以管理员模式打开cmd,切换到MySQL安装目录的bin目录下
执行:-
不要关闭上面的cmd窗口,以管理员模式新开一个cmd窗口,执行下面截图中的红色框中的命令:
关闭以上两个cmd窗口,并在任务管理器中结束所有mysql相关的进程。
个人特殊情况
- 特别说明:以下是根据个人的my-default.ini文件设置而定的,如果没有自己设置datadir一项,而是当初MySQL默认项,则不必执行【个人特殊情况】这部分内容
由于my-default.ini文件中设置的mysql的数据保存目录是其他目录,而不是默认的data目录,所以需要将mysql安装目录下中data文件夹
内的所有文件拷贝到datadir设置的目录下,* 如果datadir文件夹下已经存在一些文件要先全部删除后再复制!*
根据my-default.ini文件中的datadir的设置,将上面截图中的data文件下的所有内容复制到datadir设置的文件夹下
个人特殊情况结束处
5.使用任务管理器重新启动MySQL服务,打开一个新的cmd窗口,使用刚才新设置的密码password登陆即可
至此,一切ok!