Ash*_*jan 38 lamp mysql permissions
我已经按照本教程安装 MySQL,但在成功安装 MySQL 后,我无法访问数据库。
错误 1698 (28000):拒绝用户“root”@“localhost”的访问
Ash*_*jan 71
我在这里链接找到了一个解决方案,通过遵循这个解决方案,我解决了我的问题。
简短的步骤是:
sudo mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';
Run Code Online (Sandbox Code Playgroud)
注意:这里test是 root 用户的新密码。另外,请记住sudo service mysql restart在更改用户后运行该命令。
小智 25
我找到了另一种更好的方法,因为我们不需要为本地系统提供任何密码。
如下。
打开终端并输入
sudo mysql -u root -p
Run Code Online (Sandbox Code Playgroud)
它会在 mysql 中提示你,在这里你可以触发任何 mysql 命令。
使用 mysql 表更改表类型,因此我们可以使用空密码。波纹管是它的命令
USE mysql;
Run Code Online (Sandbox Code Playgroud)
现在我们通过以下命令更改表的类型
UPDATE user SET plugin='mysql_native_password' WHERE User='root';
Run Code Online (Sandbox Code Playgroud)
现在我们必须刷新权限,因为我们已经使用了 UPDATE。如果直接在授权表上使用 INSERT、UPDATE 或 DELETE,则需要使用 FLUSH PRIVILEGES 以重新加载授权表。
FLUSH PRIVILEGES;
Run Code Online (Sandbox Code Playgroud)
现在通过以下命令退出mysql
exit;
Run Code Online (Sandbox Code Playgroud)
现在通过以下命令重新启动mysql服务器
service mysql restart
Run Code Online (Sandbox Code Playgroud)
希望这可能会有所帮助
谢谢你。
| 归档时间: |
|
| 查看次数: |
121334 次 |
| 最近记录: |