MySql 错误提示1045 Access denied for user ‘root’@‘localhost’(using password:NO/YES)
使用MySql的时候遇到了如图所示的错误提示信息,以下是我的解决办法
首先知道是哪里出了问题
红色框中的密码没有写/忘记密码/根本不知道密码是什么
解决办法
- 找到MySql安装目录中一个叫my.ini的文件
- 打开这个文件,在图中标注的位置添加skip-grant-table
- 然后保存这个文件,可能会遇到没有权限保存的情况。这个时候关闭这个文件,然后在文件夹中右击这个文件选择属性–>安全,勾选完全控制选项,然后注意要切换组或用户名看是不是在所有情况下都勾选了完全控制选项。
在这一步中操作系统登陆的用户权限必须是管理员,普通用户是没有办法改的
- 重复第二步问题应当不大了
- 打开“服务”界面,找到MySql,右键单击先停止再启用(重启一下)
- 打开命令提示符/DOS,输入“mysql -u root -p”然后回车,成功弹出下图的应该可以直接单击回车跳出提示信息,如果出错看下一步
上图即为正确的提示信息,但是第一行pwd后面应该是不带星号的
- 如果显示不知道MySql是个什么命令,就是环境变量没有配置,这时右击我的电脑/此电脑–>属性–>环境变量–>系统变量–>Path中添加MySql的bin的地址,比如:C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin,保存之后重新打开一遍命令提示符重复上一个步骤,应该问题不大。如果回车没有进入,而是出现了如下提示,那么就说明my.ini那步没搞定
- 按照下图分别输入
- “mysql> use mysql;”
- "mysql> update user set password=password(“123456”) where user=“root”;//改密码,123456可以替换成任意其他的密码,root是你的用户名
- “mysql> flush privileges;”//刷新数据库
- “mysql> quit”//退出MySQL,用exit也可以
9. 重新打开my.ini删除刚刚添加的代码,之后保存,然后重复步骤五,重启一下MySql服务,之后就可以用刚刚设置的密码(这里是123456)进入了