mysqldump备份报错:mysqldump: Got error: 1449: The user specified as a definer ('xxx'@'%') does not exist when using LOCK TABLES

1、查找xxx用户,发现不存在

select user,host from mysql.user;

之前创建视图的xxx用户已被删除

2、找出这些视图,修改定义者信息

select concat("alter definer=`root`@`%` view ", table_name, " as ", view_definition, ";")
from information_schema.views
where table_schema='<你的数据库名>';

以上SQL会生成一条修改定义者的语句,执行即可

posted @ 2021-12-16 16:49  rootdan  阅读(456)  评论(0编辑  收藏  举报