技术文摘
Linux 系统下忘记 MySQL 密码如何解决
Linux 系统下忘记 MySQL 密码如何解决
在 Linux 系统中使用 MySQL 数据库时,忘记密码是一个常见的问题。不过,只要按照正确的步骤操作,还是能够轻松解决的。
我们需要以安全模式启动 MySQL。不同的 Linux 发行版启动方式略有不同。对于 CentOS 系列,可以通过修改 /etc/my.cnf 文件来实现。打开该文件,在 [mysqld] 部分添加或修改一行 skip-grant-tables。这一设置的作用是让 MySQL 在启动时跳过权限验证,以便我们能无密码进入数据库。修改完成后保存文件,然后使用命令 systemctl restart mysqld 重启 MySQL 服务。
接下来,无需密码登录 MySQL。在终端中输入 mysql 命令,即可成功进入 MySQL 命令行界面。进入之后,我们要切换到 mysql 数据库,使用命令 use mysql;。然后,更新密码。MySQL 8.0 及以上版本和之前版本更新密码的方式有所不同。对于较新版本,我们使用 ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码'; 语句来修改密码。这里的 '新密码' 就是你要设置的新的 MySQL 密码。如果是旧版本,可以使用 UPDATE user SET password = PASSWORD('新密码') WHERE user = 'root' AND host = 'localhost'; 语句。
完成密码更新后,记得要刷新权限,让新密码生效。使用命令 FLUSH PRIVILEGES; 即可。
最后,我们要恢复 MySQL 的正常启动模式。重新打开 /etc/my.cnf 文件,将之前添加的 skip-grant-tables 这一行删除,保存文件后再次重启 MySQL 服务,使用刚刚设置的新密码就能正常登录 MySQL 了。
在 Linux 系统下忘记 MySQL 密码并不可怕,只要遵循上述步骤,就能顺利解决问题,恢复对数据库的正常访问。为了避免此类情况再次发生,建议将重要密码妥善保存,或者定期进行备份和更新。
- Docker 教程:通过 Dockerfile 生成镜像
- Docker-Compose 构建 MySQL 容器全面解析
- Docker 借助 Bind9 完成域名解析的思路剖析
- K8S Prometheus Operator 监控工作原理阐释
- Docker 容器数据卷深度剖析
- Prometheus Operator 架构解析
- 浅析 Docker 镜像的制作与使用
- Kubernetes 中命名空间的创建方法
- Docker 实现 tomcat 镜像制作与项目部署
- Docker 中 Nginx 服务的部署方案
- 深入探究 Docker-CLI 源码(推荐)
- Docker 环境配置与问题解决之道
- 一文助你明晰 Docker 常用命令
- dock-cli 调试环境搭建流程
- K8S 节点本地存储撑爆问题的彻底解决之道