mysql找回密码

时间:2022-04-16 22:49:09

1.打开任务管理器,关闭mysqld.exe

2.win+r运行cmd打开控制台,输入mysqld --skip-grant-tables启动服务器

3.win+r重新运行cmd打开控制台,输入mysql进入数据库

4.use mysql选择数据库,对user表进行更新操作:update user set authentication_string=password('haha')

    也可能不是authentication_string而是password,可以通过desc user命令查看

5.经过以上步骤,数据库密码被置为haha。关闭以上打开的全部窗口,打开任务管理器,关闭mysqld.exe。

6.以管理员身份运行cmd,net start mysql启动mysql服务

7.现在就可以用mysql -uroot -p登录了

下面详细解释:

mysql是一个服务

net start mysql 启动服务

net stop mysql 关闭服务,更简单的方式是去任务管理器中把mysqld进程关掉也可以

mysqld是守护进程

mysqld这个程序有很多参数,用mysqld /?命令查看。要找回密码只需要--skip-grant-tables,跳过授权阶段。这样登录数据库就无需密码了.

mysql中的关键表mysql

mysql这个表十分重要, 其实刚刚安装mysql之后的这四个表都很重要,堪称四大金刚,各有各的作用,存储着元信息。

| information_schema 
| mysql |
| performance_schema 
| sys

mysql.user表里面存着用户名和密码等信息,user列是用户名,authentication_string是密码,要注意密码肯定是经过password(str)函数加密过的,不能直接update user set authentication_string='haha'.

进程启动与关闭

不用任务管理器,直接在控制台下似乎更高端一些。

tasklist命令查看正在运行的进程

taskkill命令杀死进程

在windows下要学会使用命令帮助,如taskkill -?查看taskkill的相关参数信息

用命令行关闭mysql服务:

  taskkill /im mysqld.exe

  taskkill /pid 2323