You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用MySQL Workbench/命令行执行mysqldump导出时报1356错误如何解决

MySQL mysqldump导出报错1356的诱因与解决方法

错误诱因

  • 报错涉及的schema_table_statistics、schema_table_statistics_with_buffer是MySQL内置sys库的系统视图,通常是误操作被复制到了业务库TEST中,视图依赖的performance_schema底层表、sys库内置函数在TEST库不存在,导致视图本身处于损坏状态,mysqldump执行锁表、字段查询操作时校验失败。
  • 视图的定义者用户已被删除,或者执行导出操作的用户没有访问performance_schema、sys库对应依赖对象的权限。

解决方案

方案1:删除冗余视图(推荐)

如果TEST库中的这两个视图无实际业务用途,直接删除即可解决报错:

DROP VIEW IF EXISTS TEST.schema_table_statistics;
DROP VIEW IF EXISTS TEST.schema_table_statistics_with_buffer;

删除后重新执行导出操作即可。

方案2:导出时跳过损坏视图

如果暂时无法处理视图,可在mysqldump命令中添加忽略表参数跳过这两个视图:

  • 命令行导出示例:
mysqldump -u root --password='Password' --all-databases --ignore-table=TEST.schema_table_statistics --ignore-table=TEST.schema_table_statistics_with_buffer > /bkp/202111011013-FileName.sql
  • MySQL Workbench导出时,在「高级选项」中添加上述两个--ignore-table参数即可。

方案3:修复损坏视图

如果需要保留这两个视图,先执行以下操作修复:

  1. 确认导出用户有足够权限:
GRANT SELECT ON performance_schema.* TO 'root'@'对应访问IP';
GRANT SELECT ON sys.* TO 'root'@'对应访问IP';
FLUSH PRIVILEGES;
  1. 如果权限配置完成仍报错,说明视图定义已损坏,参考官方sys库的视图定义,重新创建TEST库下的两个视图即可。

额外优化:命令行明文密码警告可通过将密码写入配置文件的[mysqldump]段,通过--defaults-file参数加载配置文件解决,避免明文密码泄露风险。

内容的提问来源于stack exchange,提问作者MrGrEEN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 10:27:04