我不小心做了一些有点愚蠢的事情并将其输入mysql控制台:
mysql> grant all on myDB.* to root@'%' identified by 'root';
...并且db配置对远程登录是开放的。现在我需要删除此授权,但不要意外地撤销我的root用户的所有权限,并有效地将自己锁定在数据库管理员之外。我该怎么办?
答案 0 :(得分:4)
首先,确认您的root@localhost
和/或root@127.0.0.1
用户有权访问。
SHOW GRANTS FOR root@localhost;
SHOW GRANTS FOR root@127.0.0.1;
您应该在结果集中看到类似GRANT ALL PRIVILEGES ON *.* to...
的行假设条目存在,您可以安全地从root@'%'
数据库中删除mysql
的授权:
REVOKE all on myDB.* from root@'%';
FLUSH PRIVILEGES;
假设您不希望root@'%'
用户存在:
DROP USER root@'%';
答案 1 :(得分:0)
你可以做的一件事就是通过mysql.user来删除违规行,并刷新权限
答案 2 :(得分:0)