无法在 mysqldump 上执行“显示事件”

无法在 mysqldump 上执行“显示事件”

尝试使用 mysqldump 备份所有 MySQL 数据库时出现以下错误:

Couldn't execute 'show events': Access denied for user 'user'@'localhost' to database 'performance_schema'

答案1

这是一个虚拟数据库,因此您需要添加选项--skip-events使其工作。

答案2

另外两个答案工作,但他们的理由和解释都是错误的。

你得到的错误是不是因为数据库是虚拟的,但由于查询存在错误show events在此处输入图片描述

SHOW EVENTSperformance_schema 数据库中返回了拒绝访问错误,而不是空结果

该错误已在 MySQL 服务器 5.7.6 中修复。只需更新您的服务器,您就不会再看到此错误。

同时,如果您被困在旧版本的 MySQL 服务器中,请show events使用其他两个答案中提供的解决方案避免调用。

答案3

如果您在使用普通数据库时遇到此错误,则需要授予用户事件权限

答案4

GRANT EVENT ON `database`.* TO 'user'@'localhost';

相关内容