首页 > 解决方案 > MySQL无法连接

问题描述

我尝试访问 MySQL,但我不能。我在mysql配置中写了skip-grant-tables并重新启动它,但它仍然不起作用。

$ mysql -u root -p 
ENTER PASSWORD: *****
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

我也尝试连接 phpmyadmin 但我不能

Cannot log in to the MySQL server 

mysqli_real_connect(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: YES)

标签: mysqlphpmyadmin

解决方案


错误含义:

SQLSTATE [28000] [1045] 用户'user'@'localhost'的访问被拒绝(使用密码:YES)

可能性:

  1. 密码中的错字
  2. 从错误的主机访问
  3. 用户不存在

但是在您的情况下,我看不到案例 3 的机会。但是案例 1 和 2 是可能的。

你能检查你的密码是否正确,即 您的密码没有错字。

如果您的密码错误,您可以通过在安全模式下启动 MySQL 来重置 admin/root 密码。


UPDATE user SET password=PASSWORD("new_password") WHERE User='root';

在第二种情况下,原因是 MySQL 只允许用户从 MySQL 用户表中定义的主机访问。

它可以通过在安全模式下启动 MySQL 来解决,并且


UPDATE user SET host='hostname' WHERE user='username';


推荐阅读