错误 1698(28000):Ubuntu 18.04 上用户“root”@“localhost”的访问被拒绝

错误 1698(28000):Ubuntu 18.04 上用户“root”@“localhost”的访问被拒绝

我已经关注了教程安装 MySQL,但是成功安装 MySQL 后,我无法访问数据库。

错误 1698 (28000):拒绝用户“root”@“localhost”访问

答案1

我在这里找到了解决方案关联,通过遵循这个解决方案,我解决了我的问题。

简要步骤如下:

sudo mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test'; 

注意:这test是 root 用户的新密码。另外,请记住sudo service mysql restart在更改用户后运行该命令。

答案2

我找到了另一种更好的方法,因为我们不需要为本地系统提供任何密码。
如下所示。

打开终端并输入

sudo mysql -u root -p

它将在 mysql 中提示您,在这里您可以执行任何 mysql 命令。

使用 mysql 表来更改表类型,因此我们可以使用空密码。 下面是它的命令

USE mysql;

现在我们通过以下命令更改表类型

UPDATE user SET plugin='mysql_native_password' WHERE User='root';

现在我们必须刷新权限,因为我们已经使用了 UPDATE。如果您在授权表您需要直接使用 FLUSH PRIVILEGES 来重新加载授权表。

FLUSH PRIVILEGES;

现在通过以下命令退出 mysql

exit;

现在通过以下命令重新启动 mysql 服务器

service mysql restart

希望这能有所帮助

谢谢。

相关内容