更改 MySQL 存储过程的所有者?

Cod*_*rer 2 mysql stored-procedures ownership

MySQL 手册说我可以使用 打印用于定义存储过程的代码SHOW CREATE PROCEDURE,但显然只有当您 a) 对表具有选择权限mysql.proc,或 b) 拥有该过程时,这才有效。

有问题的数据库是由一位已经离职的同事维护的,所以我应该是所有曾经属于“他的”的东西的所有者。唯一的问题是,我似乎找不到任何有关如何更改数据库中所有者的文档- 大多数 Google 搜索都指向如何更改文件所有权(这当然是基本的通用系统管理任务)。

指出了一个地方sp_changeobjectownership,但看起来他们可能不小心尝试使用 MS SQL Server 存储过程。有没有简单的方法可以说“将 [user1] 拥有的 [database] 中的所有对象更改为 [user2] 拥有”?如果做不到这一点,我将采取命令来更改单个对象的所有者......

lau*_*ent 6

definer表中有一列mysql.proc,每个存储过程或函数都有一行,可以更新到您的登录名。