Skip to content

问题记录

  • 2024/11/28

    问题详情:忘记mysql中安装时,自定义的root密码

    问题解读:这种情况我们需要对mysql进行重置密码操作

    问题解决:针对于MySQL Server 8.0这个版本

    1. 以管理员的权限打开cmd,关闭mysql服务:net stop MySQL80

      可以在任务管理器的服务和应用程序中进行查看,是否关闭mysql服务(也可以在服务里面手动关闭)

    2. 在以管理员权限启动的cmd中输入:mysqld --console --skip-grant-tables --shared-memory

      当出现光标停留在最后一行闪动,则运行成功

      这一步可能会出现两个问题:

      • 报错:'mysqld' 不是内部或外部命令,也不是可运行的程序

        这个问题可以到mysql安装目录的bin目录下进行运行,也可以将mysqld添加到环境变量中

      • 如果进程直接结束了,且光标没有停留在最后闪动

        一般是因为以前安装MySQL的时候自定义了安装路径,导致安装目录下没有Data文件夹

        我们需要将C:\ProgramData\MySQL\MySQL Server 8.0路径下的Data文件夹剪切到Mysql的安装目录中(与bin文件同级)(记得后续修改完密码,重新启动前,将其剪切回去)

    3. 再次以管理员身份打开一个新的cmd窗口(第一个cmd窗口无法进行操作)

      1. 输入mysql -u root -p

      2. 不用输入密码,直接敲回车进入mysql命令行

      3. 输入use mysql;

      4. 输入flush privileges;

      5. 输入alter user root@localhost identified by 'password';

        其中,password 换成自己想要的密码

      6. 输入exit,退出mysql

    4. Data文件剪切回去

    5. 打开MySQL服务,输入net start MySQL80

    6. 输入mysql -u root -p,回车后输入修改后的密码即可登录

Released under the MIT License.