Windows 本地安装的 mysql 忘记密码了怎么办?

© 江湖人称平头哥
今天是2020年10月24号,一年一度的程序员节日 1024 又到来了。祝广大程序员同学节日快乐鸭~

事情是这样的:
来到新公司,入手的一个公司供内部使用的项目,是用PHP开发的,具体的技术选型是用 laravel 框架 + Mysql
平时项目都是公司其他同事提出来的,我接收的大多都是些查操作的需求和功能,因此为保证数据最新,达到需求效果。我都是用的生产环境的数据库。
后来公司新开了一个Java编写的OA项目,差不多基本功能已经实现、已交给人事体验使用的时候,我参与了bug修改,但是呢,此时存在的bug需要往数据库写数据。这个会影响人事那边的工作,而且OA系统和企业微信API做了对接绑定,消息会推送给对应的领导。 此时我就就不能再使用线上环境的数据库了呀。
打开windows本地是装有mysql的 但是使用命令:

mysql -u root -p

试了好几次大佬提供的密码,都登录不上。我准备卸载重装的时候,大佬说百度一下啊,怎么跳过密码验证的教程。卸载重装岂不是很浪费时间。
于是百度+个人的一些知识积累:我按照如下步骤成功修改了密码:

  1. win + R 输入 cmd 打开窗口1:
    (以下命令按顺序输入!)
cd c:\Program Files\mysql\mysql 5.7\bin
net stop mysql
mysql --console --skip-grant-tables --shared-momory
  1. cmd命令重新再打开一个窗口2,输入命令:
cd c:\Program Files\mysql\mysql 5.7\bin
mysql -u root -p
// 不输入密码直接回车
use mysql
update user set authentication_string='' where user = 'root';
quit;
  1. 直接关闭窗口1
  2. 再打开一个 cmd 窗口3,输入命令:
net start mysql
cd c:\Program Files\mysql\mysql 5.7\bin
mysql -u root -p
alter user 'root'@'localhost' identified by 'root2020'

注意单词拼写,切勿混淆:
alterMySQL 数据库函数,添加或删除表的列、约束,也可以禁用或启用已存在的约束
alertJavaScript 函数,弹出消息对话框

此时,可以使用 Navicat 或者 SQL yog连接本地数据库啦~
数据库密码设置成了本年度最流行的 root2020 了。

最后,再次祝福广大程序员同学节日快乐!

参考文献:

ps:如有错误,欢迎批评指正,谢谢

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐