MySQL 是一种广泛使用的关系型数据库管理系统,现在已经成为许多网站和应用程序的首选。但是,在使用 MySQL 时,可能会收到一个错误提示:“不能获得允许的错误”,这可能会导致您的应用程序失效。下面我们来看一下出现这种错误的原因和解决方法。
当您输入 MySQL 命令以及相关参数时,可能会遇到“不允许错误”这种情况。这通常是因为您输入的用户名或密码不正确,MySQL 会拒绝您的访问请求。另一种情况是您没有为新的用户赋予足够的权限,这也可能导致“不允许错误”的出现。如果您已经确定自己输入的用户名和密码正确,并且已经为新的用户赋予了足够的权限,请尝试以下解决方法。
mysql -u root -pEnter password:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
解决办法:
首先,您需要检查 MySQL 数据库中所有用户的权限。您可以使用以下命令列出所有用户:
SELECT User, Host FROM mysql.user;
如果您发现某些用户没有必要的权限,请使用类似以下的命令将其添加到用户账户中:
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost'IDENTIFIED BY 'password' WITH GRANT OPTION;
然后,您需要重启 MySQL 服务以使更改生效。您可以使用以下命令:
sudo systemctl restart mysql
最后,输入您的用户名和密码以访问 MySQL 数据库。如果您仍然无法登录,您需要使用 MySQL 的 root 帐户手动重置其密码。您可以使用以下命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
通过运行这些命令,您应该能够成功解决“不能获得允许的错误”,并恢复对 MySQL 数据库的访问。希望本文能对您有所帮助。