修改MySQL8的密码
要在 MySQL8(中修改密码,通常推荐使用 ALTER USER 语句。MySQL8 在安全性和权限管理上进行了改进,因此推荐使用这个方法。下面是详细步骤:
步骤 1: 使用管理员账户登录 MySQL
首先,使用具有足够权限的管理员账户(通常是 root)登录到 MySQL。你可以通过以下命令进入 MySQL 命令行客户端:
1 | mysql -u root -p |
然后输入当前的密码。
步骤 2: 修改密码
在 MySQL 8 中,可以使用 ALTER USER 语句来修改密码。例如,要修改 root 用户的密码,使用以下命令:
1 | ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; |
root是用户名。localhost是允许访问的主机名,可以是localhost或者是%(表示允许从任何主机登录)。'new_password'是你想要设置的新密码。
步骤 3: 刷新权限
执行完 ALTER USER 命令后,为了确保密码修改立即生效,运行以下命令刷新权限:
1 | FLUSH PRIVILEGES; |
步骤 4: 退出 MySQL
修改密码后,退出 MySQL 命令行:
1 | exit; |
步骤 5: 使用新密码登录
重新登录 MySQL 时,使用你刚刚设置的新密码:
1 | mysql -u root -p |
输入你设定的新密码,应该就能成功登录了。
其他常见情况
1. 修改其他用户的密码
如果你需要修改其他用户的密码,只需将用户名和主机名替换为目标用户。例如,修改 user1 用户的密码:
1 | ALTER USER 'user1'@'localhost' IDENTIFIED BY 'new_password'; |
2. 忘记密码
如果你忘记了 MySQL root 用户的密码,可以通过以下步骤进行重置。这里的步骤假设你拥有操作 MySQL 数据目录和系统权限:
2.1 停止 MySQL 服务
首先,停止 MySQL 服务。
Windows:
1
net stop mysql
Linux:
1
sudo systemctl stop mysql
2.2 启动 MySQL 无密码模式
然后,启动 MySQL 并跳过授权表来允许不需要密码登录。
Windows:
1
mysqld --skip-grant-tables
Linux:
1
sudo mysqld_safe --skip-grant-tables &
2.3 登录 MySQL
接下来,使用以下命令登录 MySQL(不需要密码):
1 | mysql -u root |
2.4 修改密码
登录 MySQL 后,执行以下命令修改 root 用户的密码:
1 | ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; |
2.5 退出并重启 MySQL
完成密码修改后,退出 MySQL,然后重启 MySQL 服务。
Windows:
1
net start mysql
Linux:
1
sudo systemctl start mysql
2.6 使用新密码登录
现在你应该能够使用新密码登录 MySQL。
1 | mysql -u root -p |
总结
- 推荐方法:使用
ALTER USER语句修改密码。 - 其他用户:修改其他用户密码时,只需替换用户名。
- 忘记密码:通过跳过授权表重置密码。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 易锦风的博客!
评论







