Linux mysql 找回密码
时间: 2024-10-29 09:05:02 浏览: 16
在Linux环境下,如果你忘记了MySQL数据库的用户密码,可以通过以下几个步骤找回:
1. **安全模式启动**:
首先,你需要引导系统进入单用户模式或安全模式,因为在这种模式下,MySQL允许你直接修改配置文件。通过在GRUB加载项里添加`emergency`选项启动,或者重启服务器并在启动过程中按`e`键选择手动模式。
2. **登录root用户**:
登录到系统后,切换到root用户,通常输入`sudo -i`或`su root`。
3. **编辑my.cnf或my.ini**:
这两个文件分别是MySQL主配置文件(Ubuntu/Debian默认是`/etc/mysql/my.cnf`)和MySQL数据目录下的配置文件(如`/etc/mysql/conf.d/local.cnf`)。打开其中一个,找到`[mysqld]`部分,查找`skip-grant-tables`这一行,将其注释掉,以便可以访问grant tables。
4. **启动MySQL服务**:
使用命令`service mysql restart`或`systemctl restart mysql`,然后尝试连接MySQL,但这时不需要密码。
5. **修改用户密码**:
通过命令行工具(如`mysqladmin`或`mysql -u root`)运行`SET PASSWORD FOR '用户名'@'localhost' IDENTIFIED BY '新密码';`,将'用户名'替换为你想要修改密码的用户,'新密码'则输入你设置的新密码。记得替换回`skip-grant-tables`。
6. **禁用安全模式**:
修改完密码后,恢复`skip-grant-tables`配置,重启MySQL服务,现在应该可以用新的密码正常登录了。
阅读全文