![错误 1698(28000):在 MySQL 5.7 上,拒绝用户“root”@“localhost”访问](https://linux22.com/image/1579613/%E9%94%99%E8%AF%AF%201698%EF%BC%8828000%EF%BC%89%EF%BC%9A%E5%9C%A8%20MySQL%205.7%20%E4%B8%8A%EF%BC%8C%E6%8B%92%E7%BB%9D%E7%94%A8%E6%88%B7%E2%80%9Croot%E2%80%9D%40%E2%80%9Clocalhost%E2%80%9D%E8%AE%BF%E9%97%AE.png)
今天我在 Ubuntu 18.04 上安装了 MySQL 5.7,安装后显示错误 1698 (28000):拒绝用户“root”@“localhost”访问,请告诉我如何解决?
答案1
我在提交查询时就了解了您的问题。这是解决您问题的非常好的解决方案。
请在这里检查:https://www.expresstechsoftwares.com/mysql-access-denied-user-root-localhost/
欢呼 Ryan
答案2
打开终端并输入以下命令,如下所示:
sudo mysql -u root -p
update mysql.user set plugin = 'mysql_native_password' where User='root';
FLUSH PRIVILEGES;
此后,我使用 MySQL Workbench 登录成功。
答案3
设置临时环境以访问 MySQL
sudo systemctl stop mysqld
sudo systemctl set-environment MYSQLD_OPTS="--skip-grant-tables"
sudo systemctl start mysqld
登录 MySQL
mysql -u root -p
更新密码
UPDATE user SET authentication_string=password('123') WHERE user='root';
清除先前的权限并授予所有权限
FLUSH PRIVILEGES;
GRANT ALL PRIVILEGES ON mydb.* TO 'root'@'localhost' WITH GRANT OPTION;