MYSQL重置密码

目录

[1. 停止 MySQL 服务](#1. 停止 MySQL 服务)

[2. 以跳过权限检查的方式启动 MySQL](#2. 以跳过权限检查的方式启动 MySQL)

[3. 连接到 MySQL](#3. 连接到 MySQL)

[4. 更新 root 用户密码](#4. 更新 root 用户密码)

[5. 重启 MySQL 服务](#5. 重启 MySQL 服务)

[6. 使用新密码登录](#6. 使用新密码登录)

注意事项

一些错误情况及解决方法

[1.运行 net stop mysql 时提示"服务名无效"](#1.运行 net stop mysql 时提示“服务名无效”)

[2. "服务"管理器中无MYSQL](#2. “服务”管理器中无MYSQL)

[3.datadir 数据目录](#3.datadir 数据目录)


1. 停止 MySQL 服务

首先,停止 MySQL 服务:

  • Linux:

    bash 复制代码
    sudo systemctl stop mysql
  • Windows :

    使用服务管理器或命令行:

    bash 复制代码
    net stop mysql

2. 以跳过权限检查的方式启动 MySQL

启动 MySQL 并跳过权限检查:

  • Linux:

    bash 复制代码
    sudo mysqld_safe --skip-grant-tables &
  • Windows :

    找到 MySQL 安装目录,运行:

    bash 复制代码
    mysqld --skip-grant-tables

3. 连接到 MySQL

使用 root 用户连接到 MySQL 服务器:

bash 复制代码
mysql -u root

4. 更新 root 用户密码

在 MySQL 提示符下,选择 mysql 数据库并更新密码:

bash 复制代码
USE mysql;

-- MySQL 5.7.6 及以上版本
UPDATE user SET authentication_string=PASSWORD('新密码') WHERE User='root';

-- MySQL 5.7.5 及以下版本
UPDATE user SET password=PASSWORD('新密码') WHERE User='root';

刷新权限并退出:

bash 复制代码
FLUSH PRIVILEGES;
EXIT;

5. 重启 MySQL 服务

重启 MySQL 服务以应用更改:

  • Linux:

    bash 复制代码
    sudo systemctl start mysql
  • Windows:

    bash 复制代码
    net start mysql

6. 使用新密码登录

使用新密码登录 MySQL:

bash 复制代码
mysql -u root -p

注意事项

  • 确保新密码足够安全。

  • 在生产环境中操作前,建议备份数据。

通过这些步骤,你可以成功重置 MySQL 密码。

一些错误情况及解决方法

1.运行 net stop mysql 时提示"服务名无效"

查找 MySQL 服务名称

  1. 打开"服务"管理器:

    • Win + R,输入 services.msc,然后按回车。

    • 或者在任务栏搜索框中输入"服务"并打开。

  2. 在服务列表中找到 MySQL 服务,通常名称可能是:

    • MySQL、MySQL80、MySQL57、或者其他自定义名称。
  3. 记下正确的服务名称。

2. "服务"管理器中无MYSQL

Win + R,输入cmd ,进入MySQL的bin目录 ,运行命令:

bash 复制代码
mysqld.exe install

运行结果为:Service successfully installed。此时再查看计算机服务项,就有MySQL服务了。

直接双击MySQL服务,点击启动即可启动MySQL服务。

3.datadir 数据目录

如果 data 目录不存在,可以手动创建:

  1. C:\Program Files\MySQL\MySQL Server 8.2\ 下新建一个名为 data 的文件夹。

  2. 确保 MySQL 服务有权限访问该目录:

    • 右键点击 data 文件夹,选择"属性"。

    • 切换到"安全"选项卡,确保 NETWORK SERVICEMySQL 用户有完全控制权限。

相关推荐
八股文领域大手子24 分钟前
深入理解缓存淘汰策略:LRU 与 LFU 算法详解及 Java 实现
java·数据库·算法·缓存·mybatis·哈希算法
noravinsc42 分钟前
django admin 中更新表数据 之后再将数据返回管理界面
数据库·django·sqlite
Bruce-li__2 小时前
DRF凭什么更高效?Django原生API与DRF框架开发对比解析
数据库·django·sqlite
郭不耐3 小时前
PostgreSQL与MySQL哪个适合做时空数据分析?
mysql·postgresql·数据分析
noravinsc3 小时前
connection.cursor() 与 models.objects.filter
数据库·django·原生查询·orm查询
YH.4 小时前
MySQL 主从复制
mysql
laimaxgg5 小时前
MySQL复合查询
数据库·mysql
洞窝技术5 小时前
MYSQL:关于索引你想知道的
后端·mysql
编程在手天下我有5 小时前
Redis 常见问题深度剖析与全方位解决方案指南
数据库·redis·缓存·性能优化·数据持久化·分布式系统
辰哥单片机设计6 小时前
JQ6500语音模块详解(STM32)
数据库·mongodb