根据您提供的信息,您在root权限下先撤销了jerry用户的GRANT OPTION权限,并且撤销了所有权限,并刷新了权限信息。然后你重新为jerry用户授予SELECT、INSERT、UPDATE、DELETE和CREATE权限。
从你提供的输出来看,在执行查询CURRENT_USER()时,确实显示当前用户是jerry@%。这可能表示在执行REVOKE ALL PRIVILEGES ON . FROM ‘jerry’;之前,已经存在一个名为’jerry’@‘%‘的用户,并且该用户拥有GRANT OPTION权限。因此,在撤销所有权限后,jerry用户仍然具备自行授权的能力。
要解决这个问题,可以尝试以下步骤:
- 使用root账户登录MySQL。
- 执行REVOKE GRANT OPTION ON . FROM ‘jerry’@‘%’;以撤销jerry用户的GRANT OPTION权限。
- 执行REVOKE ALL PRIVILEGES ON . FROM ‘jerry’;以撤销其他全部权限。
- 执行FLUSH PRIVILEGES;刷新权限信息。
- 确保只授予合适的权限给jerry用户。
确保仔细审查并验证对数据库执行的任何更改操作,并限制授予权限给合适和受信任的账户。
内容由零声教学AI助手提供,问题来源于学员提问