我已经安装并重新安装了更多次 Mysql,但程序总是拒绝我访问说:
错误 1045 (28000): 用户 'root'@'localhost' 访问被拒绝(使用密码:YES)
如果我使用真实密码,则无法进入Mysql。有什么建议吗?我在想 Grants 有问题,我没有办法看到它们,因为它们在 Mysql 中。
如果您从 Ubuntu 存储库安装了 mySQL,则无法像往常一样使用 .root 用户进行身份验证mysql -u root -p。
相反,您必须键入sudo mysql,终端将提示您输入 sudo 密码。
这应该可以解决您的问题并允许您连接 mySQL。
我最近遇到了同样的问题,我更喜欢恢复通常的mysql -u root -p方法(也更容易配置一些工具,例如 mySQL Workbench、DBeaver...)。以下是我完成此操作所遵循的步骤:
连接到 mySQL
sudo mysql
Run Code Online (Sandbox Code Playgroud)
创建管理员帐户
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'admin';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
Run Code Online (Sandbox Code Playgroud)
您可以停在这里并使用管理员用户而不是 root。他们基本上具有相同的访问权限。
如果您想返回 root 用户,可以按照以下步骤操作: 退出 root 连接并使用新的管理员帐户重新连接:
quit; /* mySQL will tell you "Bye" */
mysql -u admin -p
Run Code Online (Sandbox Code Playgroud)
删除root用户
drop user root@localhost;
Run Code Online (Sandbox Code Playgroud)
使用通常的身份验证方法重新创建 root 用户
CREATE USER 'root'@'localhost' IDENTIFIED BY 'the_password_you_wish_here';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
Run Code Online (Sandbox Code Playgroud)
然后断开连接,重新连接 root 并删除 admin 帐户
quit; /* mySQL will tell you "Bye" */
mysql -u root -p
drop user admin@localhost;
Run Code Online (Sandbox Code Playgroud)
现在您将能够连接mysql -u root -p
| 归档时间: |
|
| 查看次数: |
9726 次 |
| 最近记录: |