MySQL 安装后 root 用户默认常为空密码(尤其在 Windows 或部分 Linux 发行版中),首次使用需主动设置密码,否则存在严重安全隐患。推荐使用
ALTER USER命令,这是 MySQL 5.7.6+(特别是 8.0+)的标准且安全的方式。
一、先登录到 MySQL 命令行
打开终端(Windows 可用命令提示符或 PowerShell,Linux/macOS 用 Terminal),执行:
mysql -u root -p
回车后若提示输入密码,直接按回车(空密码);若成功进入
mysql>提示符,说明当前 root 无密码,可继续设密。
二、用 ALTER USER 设置 root 密码(推荐)
在
mysql>环境下输入以下语句(注意替换 your_secure_password 为强密码,含大小写字母、数字和符号):
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_secure_password';如需兼容旧认证插件(例如连接某些客户端报
caching_sha2_password错误),可加插件声明:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_secure_password';
执行后无需额外确认,但必须刷新权限才能立即生效。
三、刷新权限并验证
紧接着运行:
FLUSH PRIVILEGES;
然后退出:
exit,再重新登录测试:
mysql -u root -p→ 输入刚设的密码 → 成功进入即表示设置完成。
四、其他可用方式(仅限特定场景)
若使用 MySQL 5.7 或更早版本,或需快速重置已知密码,也可用:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('your_secure_password');(MySQL 8.0+ 已弃用 PASSWORD() 函数,不建议使用)
mysqladmin -u root -p password "your_secure_password"(需原密码已知,适合已有密码后修改)
注意:修改密码后无需重启 MySQL 服务,
FLUSH PRIVILEGES即可使新凭据即时生效。
