
一、开始准备修改root密码
通过按下Win+R快捷键打开命令输入窗口,接着输入cmd启动命令执行窗口。
在命令窗,输入net stop mysqld来停止当前运行的MySQL服务。如果遇到“服务名无效”的提示,说明MySQL服务可能尚未在系统注册,因此无法直接在命令窗口启动。为了解决这个问题,我们需要定位MySQL数据库的安装路径。
找到MySQL数据库默认的盘符路径(根据个人的安装情况而定)。然后,通过执行命令mysqld –install来注册服务。这一步可能会遇到服务成功注册或注册失败两种情况。如果是后者,可能是因为您没有以管理员身份运行DOS窗口。
接下来,以管理员身份重新启动DOS命令窗口,并通过net start mysql命令来启动MySQL服务。如果发生错误,请先按照mysqld –initialize命令在当前路径下重新创建data文件夹,然后再尝试启动MySQL服务。
二、进行root密码的重置
停止正在运行的MySQL服务:net stop mysql。然后,使用mysqld –skip-grant-tables命令跳过权限检查直接登录服务。需要注意的是,对于MySQL 8.0及以上版本,这个命令可能不再适用。如无效,可以尝试使用mysqld –console –skip-grant-tables –shared-memory命令启动数据库。
完成上述操作后,以管理员身份打开一个新的命令窗口,并进入MySQL的bin目录。然后输入mysql -u root -p命令进行无密码登录。对于MySQL 8.0版本,可能需要采用其他方式登录。
登录后,选择mysql权限数据库:use mysql。接着将root用户的原始密码重置为空:通过update user set authentication_string=” where user=’root’的命令来实现。至此,我们已经将权限密码重置为空状态。
在结束MySQL数据库的操作后,需要关闭MySQL服务并退出所有打开的DOS命令窗口。再次以管理员权限打开新的命令窗口,并使用已重置的权限密码登录。然后修改我们想要的任何密码:使用alter user ‘root’@’localhost’ identified by ‘新密码’的命令。最后一定要刷新权限表:执行flush privileges命令。
以上是在Windows系统下针对MySQL8.0及以上版本忘记root初始化密码的修改全过程。如果有更简便高效的方法,欢迎与大家分享交流。
