MYSQL找不到密码了,我来助你一臂之力!

如果您在重新安装 MySQL 之后遇到了无法进入的问题,这可能是因为新安装的 MySQL 服务生成了新的 root 用户密码,但您可能不知道如何查找它。通常,在首次安装 MySQL 时,临时密码会被写入到日志中。请按照以下步骤来查找临时密码或重置密码:

  1. 检查 MySQL 日志文件

    重新安装 MySQL 后,查找临时 root 密码(如果生成了的话)需要检查 MySQL 服务的日志文件。可以使用以下命令检查日志文件:

    sudo grep 'temporary password' /var/log/mysqld.log
    

    如果这个命令返回了一个密码,试着使用它来登陆 MySQL:

    mysql -u root -p
    

    系统会提示您输入密码,此时请使用找到的临时密码。

  2. 如果找不到密码

    如果上述方法没有找到密码,或您试图登陆时临时密码不起作用,您可能需要手动重置 root 密码。为了做到这一点,您需要先停止 MySQL 服务并以不检查权限的方式启动它:

    sudo systemctl stop mysqld
    sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
    sudo systemctl start mysqld
    

    然后您可以登录到 MySQL 而无需密码:

    mysql -u root
    

    接着重置密码。在 MySQL 命令行界面,输入以下命令:

    FLUSH PRIVILEGES;
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
    

    其中 NewPassword 是您想设置的新密码。完成后,退出 MySQL:

    exit;
    

    最后,重启 MySQL 服务:

    sudo systemctl unset-environment MYSQLD_OPTS
    sudo systemctl restart mysqld
    

    现在您应该能使用新设置的密码登录 MySQL 了。

  3. mysql_secure_installation

    如果这是首次安装 MySQL,您可能需要运行 mysql_secure_installation 脚本:

    sudo mysql_secure_installation
    

    这个脚本会引导您完成设置 root 密码和其他安全相关设置的过程。

在执行上述步骤时,您需要具备足够的权限来停止和启动 MySQL 服务。若您的系统配置和默认的有所不同(例如日志文件的位置),您可能需要调整相关的命令。一旦成功重置密码,确保记下它,并且在必要的时候将其存储在安全的地方。


最后修改于 2023-11-13