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 用户有完全控制权限。

相关推荐
倔强的石头_1 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
云技纵横1 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二1 天前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程
冬奇Lab2 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
小猿姐2 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
ClouGence2 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
云技纵横2 天前
Gap Lock 死锁实战:5 秒在本地复现 MySQL 间隙锁死锁
后端·mysql
无响应de神2 天前
三、用户与权限管理
数据库·mysql
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql