本文介绍: 如果您尝试了上述所有解决方案但仍然无法登录 MySQL,请联系 MySQL 技术支持。该错误表明 root 用户登录 MySQL 失败,原因是密码错误

MySQL 登录报错

mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

错误表明 root 用户登录 MySQL 失败,原因是密码错误

以下是一些可能的解决方案

  1. 检查 root 用户密码是否正确
  2. 确保 root 用户有权访问 MySQL 服务器
  3. 如果您使用的是 MySQL 8.0 或更高版本,请确保您已启用密码验证
  4. 如果您使用的是 MySQL 8.0 或更高版本,请确保您已正确设置 validate_password 变量

以下是检查 root 用户密码步骤

  1. 使用 SELECT CURRENT_PASSWORD() 命令查看 root 用户当前密码
  2. 当前密码与您尝试登录的密码进行比较
  3. 如果密码匹配,请使用 SET PASSWORD FOR 'root'@'localhost' = 'new_password' 命令重置 root 用户的密码。

以下是检查 root 用户是否有权访问 MySQL 服务器步骤

  1. 使用 SELECT User,Host FROM mysql.user WHERE User = 'root' 命令查看 root 用户的权限
  2. 确保 root 用户有权访问 localhost 主机
  3. 如果 root 用户没有权访问 localhost 主机,请使用 GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION; 命令授予 root 用户对 localhost 主机所有权限。

以下是启用密码验证步骤

  1. 编辑 MySQL 配置文件 /etc/mysql/my.cnf
  2. validate_password=OFF 更改validate_password=ON
  3. 保存关闭配置文件
  4. 重启 MySQL 服务器

以下是设置 validate_password 变量的步骤:

  1. 编辑 MySQL 配置文件 /etc/mysql/my.cnf
  2. 添加以下行:
validate_password=1
  1. 保存关闭配置文件
  2. 重启 MySQL 服务器

如果您尝试了上述所有解决方案但仍然无法登录 MySQL,请联系 MySQL 技术支持

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注