程序笔记   发布时间:2022-07-14  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了一键清空本地MySQL8.0密码脚本,再也不用担心MySQL密码忘记了大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

之前我开发了一个爆破MySQL简单密码的Python脚本࿰c;但是对于MySQL就安装在自己机器上这种情况根本没有必要࿰c;只要我们拥有关闭和启动MySQL服务进程的权限࿰c;我们就可以直接重设密码。

具体原理:

  1. 结束MySQL服务进程
  2. 以跳过权限表检查的方式启动MySQL服务进程
  3. 修改存储用户密码的表࿰c;指定root本地用户的密码为空
  4. 结束MySQL服务进程
  5. 以正常方式启动MySQL服务进程

注意:命令行方式操作服务进程需要管理员权限

最终编写如下cmd脚本(保存文件名后缀为.cmd):

TASKKILL /F /IM mysqld.exe /T
start D:softwaremysql-8.0.25-winx64binmysqld --console --skip-grant-tables --shared-memory
echo updatE mysql.user SET authentication_String='' WHERE user='Root' and host='localhost';>t.sql
TIMEOUT /T 2
D:softwaremysql-8.0.25-winx64binmysql<t.sql
TASKKILL /F /IM mysqld.exe /T
net start mysql8.0

以管理员身份运行以上脚本࿰c;即可清空本地MySQL的密码:

一键清空本地MySQL8.0密码脚本,再也不用担心MySQL密码忘记了

之所以写D:softwaremysql-8.0.25-winx64bin这种全路径形式是因为我没有将MySQL的bin目录加入path环境变量࿰c;你的电脑已经将该目录加入环境则可以去掉࿰c;否则修改为你的MySQL安装位置的bin目录。

net start mysql8.0启动了名称为mysql8.0的服务。这是我在前面安装MySQL8.0时这么命名服务名称的࿰c;详见:不卸载原有mysql直接安装mysql8.0

链接:https://blog.csdn.net/as604049322/article/details/113204880

需要更换为你的MySQL注册的服务名称。若没有注册服务࿰c;则需要按照你平时启动MySQL服务的方法启动。

执行完以上脚本后就可以免密登录MySQL了࿰c;登录后就可以执行以下命令࿰c;修改MySQL为任意密码(这里修改密码为123456):

ALTER user 'Root'@'localhost' IDENTIFIED BY '123456';

然后重启MySQL服务使密码生效:

net start mysql8.0
net stop mysql8.0

对于MySQL 5.x版本࿰c;重置脚本更加简单࿰c;可以直接在脚本中设置MySQL密码。

脚本内容为:

TASKKILL /F /IM mysqld.exe /T
start mysqld --skip-grant-tables
echo ALTER USER 'Root'@'localhost' IDENTIFIED BY '123456';>t.sql
TIMEOUT /T 2
mysql<t.sql
TASKKILL /F /IM mysqld.exe /T
net start MySQL

根据实际情况修改即可。

大佬总结

以上是大佬教程为你收集整理的一键清空本地MySQL8.0密码脚本,再也不用担心MySQL密码忘记了全部内容,希望文章能够帮你解决一键清空本地MySQL8.0密码脚本,再也不用担心MySQL密码忘记了所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。