我不小心从MySQL root用户中删除了大部分权限,包括授予权限的权限。有什么方法可以将此用户恢复到原始状态吗?
答案 0 :(得分:1)
您仍然可以在数据库UPDATE
中的user
位mysql
上执行此操作:
USE mysql;
UPDATE user SET Grant_priv='1' WHERE User='root';
FLUSH PRIVILEGES;
如果步骤3不起作用,重新启动MySQL服务器将具有相同的效果。如果步骤2不起作用,则需要从备份中恢复mysql.user
。如果您没有备份,请进行备份,重新安装MySQL,然后有选择地恢复备份,在mysql
数据库中省略表。
<强>更新强>
您在第一步中获得了拒绝访问权限。此时,您将了解备份的替代解决方案。没有办法(我知道或很容易想象)你正在以任何其他方式恢复这些表。
更新2
确切的错误消息基本上是说除了丢失root的grant
权限之外,您还删除了root对mysql
数据库的访问权限。如果没有访问该数据库且没有grant
权限,我可以看到的唯一方法是以某种方式获取mysql
数据库的新副本。
您是否有机会设置复制从属设备?