错误1142:SELECT和LOCK TABLE命令被拒绝

时间:2013-01-20 10:43:39

标签: mysql mysqldump mysql-workbench mysql-error-1142

我重新安装了运行MySQL的服务器。我使用MySQL Workbench创建了数据库的备份。现在我试图通过相同的程序将转储导入到数据库中,但是我收到以下错误:

ERROR 1142 (42000) at line 656: SELECT,LOCK TABL command denied to user 'root'@'MIKKOS' for table 'events_waits_summary_by_thread_by_event_name'

我认为root拥有完全权限。我执行了以下操作,但执行此操作后,上一个查询出现相同的错误:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION

在本地运行时也会出现(root @ localhost)。

怎么办?

2 个答案:

答案 0 :(得分:1)

检查dumpWork中包含哪些MySQL Workbench数据库。我相信它默认会转储所有内容,包括userperformance_schema等数据库。这些都是问题,你的资助表可能还不错。

删除不需要的数据库,特别是performance_schema,MySQL可能会导入dumpfile而不会出错。

答案 1 :(得分:0)

重新安装较新的MySQL服务器后,需要修复内部表结构。为此,请尝试:

REPAIR TABLE `events_waits_summary_by_thread_by_event_name`;

最好删除数据库并从完整的mysql数据库转储中恢复它(如果有的话)。