买了新电脑,装上MySQL创建连接后打不开,提示“1045 access denied for user 'root'@'localhost' (using password yes)”,我是吃瓜群众一个,网上搜了好久,其实早就看到解决办法了,但是由于自己水平太低,连命令行进入MySQL都不会,网上那些解决办法大部分都忽略了我这种吃瓜群众,都是直接进入主题,所以看了很多都无济于事,直到看到了这篇,结合之前看到的解决方案,终于解决了,但还是不懂其中的原理,只知道以下操作修改了root密码。
进入正题(以下是解决办法):
解决:
1. 开始 -->
cmd --> net stop mysql (停用MySQL服务 没启动的可以省略,反正我是没用这一步)
2. 找到安装路径 MySQL Server 5.1下的my.ini(这里以5.1版本为例,你的是什么版本自行查找,总之找到my.ini就好了)
3. 打开 my.ini 找到 [mysqld] 然后在下面加上
这句: skip_grant_tables (意思好像是 启动MySQL服务的时候跳过权限表认证 )
4. 然后就启动数据库修改密码了
开始 --> cmd --> net start mysql (启动MySQL服务)---> mysql 回车 ( 如果成功,将出现MySQL提示符)
5. 输入use mysql; (连接权限数据库)。
6. 改密码:update user set password=password("123") where user="root";(别忘了最后加分号) 。
7. 刷新权限(必须步骤):flush privileges; 。
8. 退出 quit。
9. 将第3 步的 my.ini里的 skip_grant_tables 去掉(启动MySQL服务的时候不能让他跳过权限表认证 )
10. 重启MySQL ,再进入,使用用户名root和刚才设置的新密码123就可以登录了。