ubuntu忘记mysql密码
时间: 2024-09-15 22:13:33 浏览: 63
如果你在Ubuntu系统上安装了MySQL并忘记了root用户的密码,可以尝试以下步骤来恢复:
1. **安全模式登录**:
- 重启MySQL服务,并在启动时按`e`键进入GRUB菜单,选择"Advanced options for Ubuntu"。
- 找到mysqld_safe启动选项,修改行末添加`skip-grant-tables`,然后启动。
2. **使用命令行恢复**:
- 使用SSH登录到你的服务器,打开终端。
- 进入MySQL命令行(非GUI版本):
```
mysql -u root
```
- 因为`skip-grant-tables`设置,你现在无需密码就能登录。
3. **重置密码**:
- 在MySQL提示符下运行以下命令(这里假设你想设定新密码为`newpassword`):
```
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
FLUSH PRIVILEGES;
```
如果你需要更改远程访问的密码,也可以加上类似下面的命令:
```
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'newpassword';
```
4. **退出并正常启动**:
- 关闭MySQL命令行,然后移除启动参数:
```
sudo sed -i '/skip-grant-tables/d' /etc/mysql/my.cnf
```
重启MySQL服务使其加载新的配置。
5. **验证密码是否生效**:
- 重新登录MySQL,使用新密码测试。
注意:这是一种临时解决方案,长期来说建议定期备份和管理数据库密码。如果经常忘记密码,考虑使用更强大的身份验证策略,如MySQL的插件或者密钥对认证。
阅读全文