MySQL ERROR 1698 (28000): Access denied for user ‘root’@’localhost’

MySQL ERROR 1698 (28000): Access denied for user ‘root’@’localhost’

在MySQL中,我们经常会遇到ERROR 1698 (28000): Access denied for user 'root'@'localhost'的错误提示,如何解决呢?本文将为您一一解答。

阅读更多:MySQL 教程

定义

首先,我们需要了解下什么是Access denied,这是MySQL中权限相关的错误代码,即因为缺少相应的操作权限,用户无法进行某些数据库或表的操作。

解决方案

该错误是因为当前用户’root’在某些情况下不具备执行某些操作的权限,需要通过更改账户权限或创建新账户来解决。下面介绍两种解决方案:

1. 通过更改账户权限解决

可以通过更改用户’root’的权限来解决该问题。首先登录MySQL,然后执行以下命令:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
SQL

其中,’password’为用户’root’的密码,可能会不同。执行以上命令后,可以尝试再次登录并执行您想要的操作。

2. 创建新账户

第二种解决方案是创建新用户并授权,即使不具备’root’账户的高权限,也可以对某些数据库或表进行操作。步骤如下:

  1. 使用root账户登录MySQL

  2. 创建新用户:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
SQL

其中,’newuser’为新用户的账户名,’password’为密码。

  1. 授予新用户相应的权限:
GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost';
SQL

授权结束后,新用户’newuser’就可以对数据库进行操作了。

总结

MySQL中的ERROR 1698 (28000): Access denied for user 'root'@'localhost'直接影响着我们对MySQL的使用。通过更改账户权限或创建新的账户,我们可以解决这个问题,方便我们的数据库操作。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册