时间:2021-07-01 10:21:17 帮助过:74人阅读
现象:在数据库迁移之后,调用函数报错,提示definer不存在。
查了一下,发现函数和存储过程之类的,本身调用是不存在权限这个概念的。
definer这个值并不会限制函数和存储过程被调用的权限,但会限制函数和存储过程访问数据库的权限。
函数和存储过程在访问数据库时,会获取definer用户对应的数据库访问权限。
因为在迁库后,definer值没有修改,原数据库的用户在新库中不存在,所以报错,修改一下definer值就可以了
MySQL中的定义者(definer)的作用
标签:用户 概念 调用函数 现象 报错 图片 数据 过程 class