MySQL 授权系统将存储的例程考虑如下:
CREATE ROUTINE创建存储例程需要特权 。
CREATE ROUTINE
ALTER ROUTINE需要特权才能更改或删除存储的例程 。如有必要,此权限会自动授予例程的创建者,并在删除例程时从创建者处删除。
ALTER ROUTINE
执行EXECUTE存储例程需要特权。但是,如有必要,此权限会自动授予例程的创建者(并在删除例程时从创建者处删除)。此外,例程的默认SQL SECURITY 特征是DEFINER,它使有权访问与例程关联的数据库的用户能够执行例程。
EXECUTE
SQL SECURITY
DEFINER
如果 automatic_sp_privileges 系统变量为 0, 则不会自动向例程创建者授予和删除权限 EXECUTE。 ALTER ROUTINE
automatic_sp_privileges
例程的创建者是用于为其执行 CREATE语句的帐户。这可能与 DEFINER在例程定义中命名为的帐户不同。
CREATE
服务器操作该mysql.proc表以响应创建、更改或删除存储例程的语句。不支持手动操作此表。
mysql.proc