Ubuntu 下 mysql 忘记密码

(1) 关闭Mysql系统服务:#service mysql stop
(2) 使用命令跳过密码:#mysqld_safe --skip-grant-tables &
(3) 回车,输入命令:#mysql
(4) 上述步骤后进入到数据库内部,然后输入下列命令:

>use mysql
>update user set password=password("root") where user='root';
>flush privileges;

(5) 退出数据库,重启数据库服务,即可以新密码登录数据库
注:若步骤(2)完成后,无法完成步骤(3)并进入到数据库,将计算机重启之后,从步骤(1)开始即可。

### 如何在 Ubuntu 上重置 MySQL Root 密码 如果忘记MySQL 的 `root` 用户密码,在 Ubuntu 系统中可以通过以下方法重新设置密码: #### 方法一:利用 Debian 自带账户(适用于特定版本) 对于某些基于 Debian 的发行版,如 Ubuntu,可以使用内置的特殊账户访问 MySQL 数据库并更改密码。具体操作如下: 1. 使用命令行工具连接到 MySQL 数据库,通过系统默认配置文件中的认证信息完成身份验证。 2. 执行 SQL 命令更新 `root` 用户的密码。 这种方法依赖于系统的内部机制,通常只存在于部分定制化环境中[^1]。 #### 方法二:跳过权限验证启动 MySQL 服务 这是更为通用的方法之一,适合大多数 Linux 发行版上的 MySQL 安装环境。以下是实现过程的关键步骤描述: - 首先停止当前正在运行的 MySQL 服务实例: ```bash sudo systemctl stop mysql ``` - 接着以忽略授权表的方式重新启动 MySQL 进程,这允许管理员无需提供任何凭证即可进入数据库管理系统: ```bash sudo mysqld_safe --skip-grant-tables & ``` 或者直接执行mysqld命令: ```bash sudo mysqld --user=mysql --skip-grant-tables & ``` 此时需要注意的是,由于绕过了安全控制层,因此整个服务器处于高风险状态期间应避免对外暴露网络接口[^2]。 - 登录至无保护模式下的 MySQL 控制台: ```sql mysql -u root ``` - 修改目标用户的密码值。假设采用最新标准加密算法存储散列后的密钥字符串,则需依据实际使用的客户端版本调整语法结构;例如针对较新版本可运用如下语句形式: ```sql ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password'; FLUSH PRIVILEGES; ``` 上述指令将把本地主机绑定的超级管理角色关联的新秘密短语设定为你指定的内容,并刷新内存缓存确保立即生效。 最后记得恢复正常的安全策略以及确认变更成果: ```bash sudo systemctl start mysql mysql -uroot -p ``` 输入刚创建好的口令尝试接入验证是否成功[^3]。 ### 注意事项 在整个过程中务必小心谨慎对待生产环境的数据完整性与可用性保障措施,建议事先做好充分备份以防万一发生意外状况造成不可逆损害。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值