mysql初始密码怎么找回_mysql初始密码找回及修改全攻略

来源:这里教程网 时间:2026-02-28 20:29:57 作者:

MySQL 安装后首次使用时,很多人会遇到初始密码找不到的问题。尤其是通过 yum、apt 或官方安装包安装时,系统会自动生成一个临时密码。下面详细介绍如何找回 MySQL 初始密码并修改为自定义密码。

一、查看 MySQL 临时密码(适用于首次安装)

如果你是第一次安装 MySQL(特别是 MySQL 5.7 及以上版本),安装过程中系统会自动生成一个临时密码,存储在日志文件中。

执行以下命令查找临时密码:

CentOS/RHEL 系统: 查看 /var/log/mysqld.log Ubuntu/Debian 系统: 查看 /var/log/mysql/error.log

运行命令:

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

输出示例:

[Note] A temporary password is generated for root@localhost: abc123!XYZ

其中 abc123!XYZ 就是你的初始临时密码。

二、登录 MySQL 并修改密码

使用查到的临时密码登录 MySQL:

mysql -u root -p

输入临时密码后进入 MySQL 命令行。

接下来必须修改密码,否则无法执行其他操作。使用 ALTER USER 命令修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';

例如:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

注意:MySQL 5.7+ 默认启用密码策略,要求密码包含大小写字母、数字和特殊字符,且长度不少于8位。

三、忘记密码?重置 MySQL root 密码

如果已经使用过 MySQL,忘记了密码,可以通过跳过权限验证的方式重置。

步骤如下:

    停止 MySQL 服务:
    sudo systemctl stop mysqld(或 mysql)
    启动 MySQL 并跳过权限表:
    sudo mysqld_safe --skip-grant-tables --skip-networking &
    用 root 登录 MySQL:
    mysql -u root
    刷新权限并修改密码:

进入 MySQL 后依次执行:

FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

完成后退出 MySQL,重启服务:

sudo systemctl restart mysqld

即可用新密码登录。

四、常见问题与注意事项

1. 找不到临时密码?确认是否是首次安装,如果不是,可能已重置过密码。
2. 修改密码时报错?检查密码复杂度是否符合策略要求。
3. 使用 --skip-grant-tables 时务必关闭网络访问(加 --skip-networking),防止安全风险。
4. 某些系统中 mysqld_safe 路径不在默认 PATH,可尝试使用完整路径如 /usr/bin/mysqld_safe。

基本上就这些。只要按步骤操作,无论是找回初始密码还是重置遗忘密码,都能顺利解决。关键是记住首次安装时的日志查看和密码策略要求,避免卡在第一步。

相关推荐