美文网首页
mysqldump备份报错

mysqldump备份报错

作者: 看他好搞笑 | 来源:发表于2019-10-09 06:32 被阅读0次

    报错描述

    在使用mysqldump时报错


    image.png
     mysqldump: Couldnt execute SHOW FIELDS FROM `$view_name`: View $db_name.$view_name references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them (1356)
    

    原因:
    该view引用了无效的表,列,函数或者定义者。
    处理思路:
    可以根据报错信息,进入db,执行SHOW CREATE VIEW $view_name\G,查看该view的定义,逐一检查该view的基表,列,或相关函数与用户是否具有相关权限。考虑重建或删除视图。
    来自于https://www.linuxidc.com/Linux/2018-01/150695.htm
    在查看视图时报错

    image.png 定位到是视图导致的

    解决方案

    1.建议使用show create view db,viewname将视图创建语句拷贝出来。然后drop掉,重新创建,这样登录的用户就对这个视图有权限了。注意需要评估一下业务是否正在使用该视图,否则重建过程中会对业务产生影响。
    2.在mysqldump的备份命令最后加上-ignore-table=db1.view_t1,先不复制有问题的view,然后倒入的时候,手动创建。

    相关文章

      网友评论

          本文标题:mysqldump备份报错

          本文链接:https://www.haomeiwen.com/subject/dnisyctx.html