技术文摘
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 数据库的访问权限,确保工作和项目的顺利进行。
- Lombok 代码设计缺陷之封装问题剖析
- 以下这些套路助你顺利解决并发问题
- 探索 CSS 打造自适应导航栏
- 面试官:如何使 Spring 扫描自定义注解?
- 你竟不知 JavaScript 正在泄漏内存
- 基于 Java 和 Apache Kafka 打造可靠消息系统
- DDD 实战:化解并发难题的五个技巧
- 基于 Spring MVC 的 Restful 风格请求支持实现
- 深入探究 Vite 的设计理念
- Golang 数组:完整指南与实用实例
- Golang 中的追加操作深度剖析
- Java 函数式编程实战:Consumer、Predicate 与 Supplier 应用指南
- SpringBoot 与 Disruptor 打造极速高并发处理
- 20 个 JavaScript 效率提升缩写技巧
- 甲骨文推出 Visual Studio Code 的 Java 扩展插件 涵盖全开发周期