MySQL忘记密码
1.进入mysql安装目录,打开my.ini文件
MySQL的配置文件my.ini路径在哪里?
C:\ProgramData\MySQL
2.找到[mysqld]配置行(注意,不是[mysql]),在其下一行输入:skip-grant-tables(或者:–skip-grant-tables,两者区别是有时两个横线会导致服务无法重启需要测试应当添加否。)
3.cmd命令:services.msc,找到mysql服务并重启(使修改的配置文件生效)
4.mysql命令行:use mysql;(进入系统配置库)
要先选中一个数据库,show databases; 可以看到localhost下所有的数据库。**分号一定要加分号,代表语句的结束!!!**一定先进入数据库,要不会报错的,总的逻辑就是在写SQL语句之前一定要先选中数据库和表。
5.mysql命令行:update user set password=password(“123”) where user=“root”;(别忘了最后加分号,分号意味着命令的结束)
可能会报错
因为mysql.user表中没有password这个字段,改成了authentication_string,改成如下
update mysql.user set authentication_string=password(‘123456’) where user=‘root’;
参考http://t.zoukankan.com/c-jw-p-13806673.html
6.mysql命令行:flush privileges;(刷新缓存,更新数据库读取的密码别忘了最后加分号,分号意味着命令的结束)
7.退出mysql,或重启服务,密码设置成功。
最后去数据库中看了一下是有系统自带的mysql数据库和user表,user表中的root用户就是经常用来连接mysql的用户名,密码是加密的,目前还不知道加密方式是什么,后面遇到类似的问题再看一下吧。
参考资料:
https://blog.youkuaiyun.com/weixin_40918067/article/details/116868560
基本是在这个上面做了扩充,亲测有效