📅  最后修改于: 2023-12-03 14:44:30.187000             🧑  作者: Mango
当你在 MySQL 上尝试使用本地密码登录时,可能会遇到密码被拒绝的问题。这通常是因为密码不正确或者权限不足造成的。
当你输入的密码不正确时,MySQL 会拒绝你的登录请求。此时,你需要检查你输入的密码是否正确,并确保你的密码符合 MySQL 密码规范。
MySQL 密码规范要求密码必须包含大写字母、小写字母、数字和特殊字符,例如 !@#$%^&*()
。密码长度至少为 8 位。
如果你忘记了密码,可以通过以下步骤重置密码:
执行以下命令停止 MySQL 服务:
sudo systemctl stop mysql
以 root 用户身份启动 MySQL 服务:
sudo mysqld_safe --skip-grant-tables &
连接到 MySQL 服务器:
mysql -u root
执行以下命令重置密码:
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
其中,new_password
是你要设置的新密码。
退出 MySQL 服务器。
重新启动 MySQL 服务:
sudo systemctl start mysql
除了密码不正确,权限不足也可能导致本地密码被拒绝的问题。如果你尝试连接 MySQL 服务器时收到权限不足的错误消息,可能是因为你没有足够的权限来访问该服务器。
在这种情况下,你需要使用具有足够权限的用户帐户来连接到 MySQL 服务器。你可以使用以下命令创建具有足够权限的用户帐户:
CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'new_password';
GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
其中,new_user
和 new_password
分别是你要创建的新用户和密码。'GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'localhost' WITH GRANT OPTION;'
语句授予该用户所有权限。