首页 / ACCESS / 解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】
解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2789字,纯文字阅读大概需要4分钟。
内容图文
![解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】](/upload/InfoBanner/zyjiaocheng/505/2c3f796407cd498697239668febe8cb5.jpg)
文件转自:https://blog.csdn.net/hua1011161696/article/details/80666025
问题:(MySQL 5.6社区版windows版)
忘记密码或其他一些原因导致无法连接上MySQL服务器端,在命令行报错:
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
解决方案:
步骤一:关闭数据库服务端mysqld程序
两种方式:
①快捷键 windows + R ;输入 services.msc ; 找到MySQL 停止其服务(前提是你之前已经把MySQL加入了系统服务中)
②在命令行程序中;注意需要以管理员权限运行cmd程序,不然无法关闭mysqld进程
>>tasklist |findstr mysqld 这行命令可以用来查看mysqld是否在运行,在运行中则可以查到它的PID
>>taskkill /F /PID xxxx xxxx是从前面一条命令得到的PID值
步骤二:跳过权限登录MySQL 服务器端
在cmd中执行 mysqld --skip-grant-tables
>>mysqld --skip-grant-tables
此时cmd程序会阻塞,关闭cmd程序 然后重新以管理员权限运行cmd
然后在cmd命令行中输入 mysql 就能连接上MySQL 服务器端了
>>mysql
然后可以通过sql语句 :SELECT * from mysql.user\G; 来查看服务器端所有的用户信息,重点查看User、Password、authentication_string这三项。这条语句非常关键。
步骤三:修改密码
依次执行如下sql语句:
update mysql.user set authentication_string=password(‘321‘) where user = ‘root‘;
flush privileges;
上面第一条sql语句中 password(‘密码‘) 函数中写你想要改成的密码,我这用的是密码321
接着执行:
SELECT * from mysql.user\G;
去找到root用户的authentication_string这项,并把它的值记下来。
MySQL会给密码进行加密,你想要设置的密码进行加密后的值就等于此时authentication_string这项的值
所以接下来把Password这项的值也设置成此时authentication_string项的值就ok了;我设置的密码是321 ,其对应的密文是 *7297C3E22DEB91303FC493303A8158AD4231F486
执行下面两条sql语句:
update mysql.user set password = ‘*7297C3E22DEB91303FC493303A8158AD4231F486‘ where user = ‘root‘;
flush privileges;
步骤四:
输入 quit 退出 mysql ;然后就可以直接登录了
>>mysql -u root -p
--------------------------------------------------------------------------------
当然也可以重启下mysqld再登录
再次提醒:需要以管理员权限运行cmd
>>tasklist |findstr mysqld
>>taskkill /F /PID xxxx
然后就是启动mysqld程序
(不知怎么把mysqld加入系统服务中去可看点击打开链接)
>>mysqld
若已经把mysqld程序加入了系统服务中,则需要在系统服务中启动MySQL服务端
快捷键 windows + R ;输入 services.msc ;
最后就是重新登录
>>mysql -u root -p
在Password:处填入你前面设置的密码
---------------------
作者:Lee-hua
来源:CSDN
原文:https://blog.csdn.net/hua1011161696/article/details/80666025
版权声明:本文为博主原创文章,转载请附上博文链接!
解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】
标签:mysql 5.6 list services oca http set 数据 提醒 系统
本文系统来源:https://www.cnblogs.com/enochgong/p/10506703.html
内容总结
以上是互联网集市为您收集整理的解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】全部内容,希望文章能够帮你解决解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)【亲测有效】所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。