MySQL中的定义者(definer)的作用
Posted boogieman
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL中的定义者(definer)的作用相关的知识,希望对你有一定的参考价值。
现象:在数据库迁移之后,调用函数报错,提示definer不存在。
查了一下,发现函数和存储过程之类的,本身调用是不存在权限这个概念的。
definer这个值并不会限制函数和存储过程被调用的权限,但会限制函数和存储过程访问数据库的权限。
函数和存储过程在访问数据库时,会获取definer用户对应的数据库访问权限。
因为在迁库后,definer值没有修改,原数据库的用户在新库中不存在,所以报错,修改一下definer值就可以了
以上是关于MySQL中的定义者(definer)的作用的主要内容,如果未能解决你的问题,请参考以下文章