先停止MySQL服务,再以跳过权限表方式启动,用新终端登录后修改root密码并刷新权限,最后重启服务并测试登录。具体步骤包括:1. 停止MySQL服务(Windows通过服务管理器,Linux用systemctl或service命令);2. 在bin目录下运行mysqld --skip-grant-tables启动无验证模式;3. 新窗口执行mysql -u root -p回车登录;4. 使用ALTER USER语句修改密码(如ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';),并执行FLUSH PRIVILEGES;5. 终止跳过权限进程,重启MySQL服务;6. 用新密码登录验证。操作需注意版本差异和权限刷新。

修改MySQL本地密码是数据库管理中的常见操作,尤其在忘记密码或需要提升安全性时。以下是针对Windows和Linux系统下修改MySQL本地密码的详细步骤,图文结合说明更清晰。
1. 停止MySQL服务
要修改密码,首先需要停止正在运行的MySQL服务,以便进入安全模式。
Windows系统:- 按 Win + R,输入 services.msc,回车打开服务管理器
- 找到 MySQL 服务(如 MySQL80),右键选择“停止”
- 打开终端,执行命令:
- 或使用:
sudo systemctl stop mysql
sudo service mysql stop
2. 跳过权限验证启动MySQL
以跳过权限表的方式启动MySQL,这样无需密码即可登录。
- 打开命令行或终端,进入MySQL的bin目录(例如:C:\mysql\bin)
- 执行以下命令:
mysqld --skip-grant-tables --shared-memory
注意:- 该窗口会保持运行状态,不要关闭
- Linux用户可后台运行:加 & 符号
3. 新建终端窗口登录MySQL
重新打开一个命令行窗口,连接到MySQL服务器。
- 进入 bin 目录后执行:
- 提示输入密码时,直接回车(因已跳过验证)
mysql -u root -p
成功后会出现 mysql> 提示符,表示已登录。
4. 修改root用户密码
根据MySQL版本不同,修改密码的SQL语句略有差异。
MySQL 5.7及以上版本:- 执行以下命令更新密码:
- 新版MySQL使用如下语法(推荐):
UPDATE mysql.user SET authentication_string = PASSWORD('新密码') WHERE User = 'root';
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';
FLUSH PRIVILEGES;
5. 重启MySQL服务
完成密码修改后,需正常重启MySQL服务。
- 先回到第一步中运行 --skip-grant-tables 的窗口,按 Ctrl+C 终止进程
- 然后启动MySQL服务:
在服务管理器中启动MySQL服务
Linux:sudo systemctl start mysql
6. 使用新密码登录测试
验证密码是否修改成功。
- 命令行输入:
- 输入你设置的新密码
- 若进入mysql>界面,则说明修改成功
mysql -u root -p
基本上就这些。整个过程不复杂但容易忽略细节,比如忘记刷新权限或未正确停止服务。只要按步骤操作,基本都能顺利完成本地MySQL密码修改。










