ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

[数据库] MySql的root密码忘了怎么办?

2022-05-27 00:34:41  阅读:124  来源: 互联网

标签:数据库 cmd 密码 输入 mysql root MySql user


发现问题:

img

使用navicat时,连接电脑上的sql服务时,发现自己已经忘记了root密码,尝试输入一个后准备连接,就出现了上图的报错,因为并不想重装mysql,因此决定修改root密码。

解决思路

mysql作为一个DBMS,其用户的ID和密码也同样以表的形式存放在DB中,因此只要我们以跨越权限的方式访问mysql,对其存放用户ID和密码的表进行修改就可以在不登录root账户的情况下,修改密码。

步骤

环境: Windows10,

​ mysql5.7.19

首先以管理员身份运行cmd

img

如果你没有将cmd固定在开始菜单,你可以去C:\windows\system32该目录下找到 cmd.exe 右键选择“以管理员身份运行”

关闭已经启动的mysql(如果你的mysql没有启动,就可以忽略这一步)

如果你不知道你的mysql是否启动了,请尝试在cmd中输入

net stop mysql //关闭mysql的命令,如果已关闭就不会有反应,如果mysql在启动状态就会被关闭

跳过权限表启动mysql

mysqld --skip--grant--tables

当输入这一步后,cmd窗口会进去如下图所示状态,将无法再输入新的命令行

img

以管理员身份打开一个新的cmd窗口,和步骤1类似,不再赘述

在新的cmd窗口中 ,输入mysql

mysql

就可以启动mysql命令行工具,如下图

img

输入 mysql databases;

注意分号和结尾的s

img

输入如下命令

use mysql;

将会显示如下页面

img

输入如下命令

show tables;

img

其中mysql保存我们密码的表就是上图中显示的 user中

输入命令

desc user;

img

仔细看上图中的authentication_string 就是存放我们root密码的地方

这一步将会使用update语句来修改密码

update user
set authentication_string=password('67890') //请将67890替换为你想要设置的密码就好了
where user='root';

将会出现如下字段

img

密码已经修改成功

刷新权限

flush privileges;

出现如下信息表示成功

img

验证是否修改成功

mysql -u root -p //输入后在新出现的行中输入密码后,成功进入mysql就表明成功修改了密码

如果以上遇到了问题或者还是看不懂的话,请直接查看参考资料中的两个视频,会更加清晰。

参考资料:

  1. https://www.bilibili.com/video/BV1di4y1k7LW?spm_id_from=333.337.search-card.all.click
  2. https://www.bilibili.com/video/BV1AT4y1D7q1?spm_id_from=333.337.search-card.all.click

感谢视频中这个老师的讲解,讲的很清晰。

标签:数据库,cmd,密码,输入,mysql,root,MySql,user
来源: https://www.cnblogs.com/JiShi2001/p/16315973.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有