MySQL 8.4 Release Notes
15.7.4.2 可加载函数的 DROP FUNCTION 语句
DROP FUNCTION [IF EXISTS] function_name
该语句删除名为 function_name
的可加载函数。(DROP FUNCTION
也用于删除存储函数;见第15.1.29节,“DROP PROCEDURE 和 DROP FUNCTION 语句”。)
DROP FUNCTION
是 CREATE FUNCTION
的补充。它需要对 mysql
系统架构的DELETE
权限,因为它从注册函数的 mysql.func
系统表中删除行。
DROP FUNCTION
也从性能chema user_defined_functions
表中删除函数,该表提供了关于安装的可加载函数的实时信息。见第29.12.22.10节,“用户自定义函数表”。
在正常启动序列中,服务器加载注册在 mysql.func
表中的函数。因为DROP FUNCTION
删除了被删除函数的 mysql.func
行,因此服务器在后续重启时不再加载该函数。
DROP FUNCTION
无法用来删除由组件或插件自动安装的可加载函数,而不是使用CREATE FUNCTION
安装的函数。这种函数也会在卸载组件或插件时自动删除。
Note
要升级与可加载函数相关的共享库,执行DROP FUNCTION
语句,升级共享库,然后执行CREATE FUNCTION
语句。如果先升级共享库然后使用DROP FUNCTION
,服务器可能会意外关闭。