问题
使用mysqldump视图后,由于原视图创建时,定义了指定用户权限,对应视图创建DDL如下:
CREATE ALGORITHM=UNDEFINED DEFINER=`***` SQL SECURITY DEFINER VIEW `***` AS select ...
而当前导入的数据库可能不存在该用户权限,进而报错:The user specified as a definer ('***') does not exist
解决方案
- 拷贝视图DDL,去掉原来的:DEFINER=`***`
- 删除视图,重新创建视图(默认DEFINER=`root`@`%`)