mysql5.7以上版本,登录时报1045错误解决办法

当忘记MySQL root用户的密码时,可以通过编辑my.ini配置文件,添加'skip-grant-tables'来跳过权限检查,重启服务后无密登录。接着在MySQL命令行更新root用户的密码,使用'flush privileges'命令使更改生效。最后删除配置文件中的'skip-grant-tables',重新启动服务。记得用新密码登录并设置新密码。
摘要由CSDN通过智能技术生成

解决方案:
1、找到你安装mysql目录,找到my_default.ini或者my.ini(看你安装时使用的是哪一个配置文件),在[mysqld]下加入 skip-grant-tables
2、然后打开cmd,输入net stop mysql(停止mysql服务)执行后,再输入net start mysql(开启mysql服务)。或者Win+R快捷键输入services.msc按回车键后,在服务列表中找到mysql服务,重启mysql服务。
3、此时登录mysql就不需要密码了。在cmd中输入mysql -u root -p登录数据库(如果没有配置环境变量,需要进入到你安装mysql目录下的bin目录下)
4、输入use mysql;回车
5、输入update user set authentication_string=‘123qwe’ where user=‘root’;

注意最后的分号不能漏,否则sql语句无效。authentication_string在5.7之前是password,5.7之后是setauthentication_string

6、输入刷新数据库指令,flush privileges;
7、输入退出mysql指令:quit
8、改好之后,再修改一下my.ini或者my_default.ini(看你安装时使用的是哪一个配置文件)这个文件,把我们刚才加入的”skip-grant-tables”这行删除,保存退出再重启mysql就可以了
9、再次登录mysql可能会提示你ERROR 1862,这是你只需 mysql -u root -p(‘你修改过的密码’) SET PASSWORD = PASSWORD(‘新密码’);

原文链接:https://blog.csdn.net/qq_21386275/article/details/78280370

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值