技术文摘
Linux 下忘记 MySQL 密码
Linux 下忘记 MySQL 密码
在 Linux 环境中使用 MySQL 数据库时,忘记密码是一个常见且棘手的问题。不过,只要掌握正确的方法,就能顺利解决。
我们需要以安全模式启动 MySQL。不同的 Linux 发行版操作略有不同,但大致思路一致。以常见的 CentOS 为例,我们可以先停止正在运行的 MySQL 服务,使用命令 “systemctl stop mysqld”。然后,通过修改启动参数来以安全模式启动 MySQL。编辑 MySQL 的配置文件,一般路径为 “/etc/my.cnf”。在 [mysqld] 部分添加 “skip-grant-tables” 这一行,这一参数的作用是让 MySQL 在启动时跳过权限验证,从而可以无需密码直接登录。
完成配置修改后,重新启动 MySQL 服务,“systemctl start mysqld”。接着,使用 “mysql” 命令直接登录数据库,此时不需要输入密码。登录成功后,我们就进入了 MySQL 的命令行界面。
接下来要做的就是修改密码。在 MySQL 中,用户信息存储在 “mysql” 数据库的 “user” 表中。我们先切换到 “mysql” 数据库,使用命令 “use mysql;”。然后,使用 “UPDATE” 语句来修改密码。例如,如果要将 root 用户的密码修改为 “newpassword”,可以执行命令 “UPDATE user SET authentication_string=PASSWORD('newpassword') WHERE User='root' AND Host='localhost';”。这里的 “authentication_string” 字段存储着加密后的密码。
修改完成后,不要忘记刷新权限,使用 “FLUSH PRIVILEGES;” 命令。之后,退出 MySQL 命令行界面,使用 “exit” 命令。
最后,我们需要恢复 MySQL 的正常启动模式。再次编辑 MySQL 配置文件,将之前添加的 “skip-grant-tables” 这一行删除,保存并退出。然后重新启动 MySQL 服务,“systemctl restart mysqld”。
至此,在 Linux 下忘记 MySQL 密码的问题就得到了解决。掌握这个方法,当遇到此类问题时,就能迅速恢复对 MySQL 数据库的访问权限,确保工作和项目的顺利进行。
- Go 应用中 Error 优雅处理的若干技巧
- 面试官谈二维码扫码登录的原理
- 完整全面的 Kubernetes 化集群稳定架构
- Spring Boot、MyBatis 与 MySQL 完成读写分离的实现
- LiveCode 开源八年后转闭源:付出回报失衡
- 前端页面性能指标:面试必问的基本介绍
- 几行 Java 代码实现图片文字提取功能
- 探索团队隐含价值观与需求的指引
- VR 的这张“旧船票”能否登上“元宇宙”飞船
- OpenHarmony 2.0 对 RK3399 的移植方法
- OpenHarmony Neptune 开发板的 I2C 驱动实现 OLED 屏幕显示
- 从 Docker 小白到实战:Dockerfile 解析与实战演示,轻松上手
- OpenHarmony HDF 配置管理的分析与使用
- 前端实战:借助 CSS3 打造类在线直播的队列动画
- AR/VR 虽能一览众山小但非真好汉 元宇宙存局限性