MySQL崩溃功能

MySQL crash on DROP FUNCTION

本文关键字:功能 崩溃 MySQL      更新时间:2023-10-16

我已经通过 CREATE FUNCTION命令创建了一个UDF,现在当我尝试将其丢弃时,服务器崩溃了。根据文档,这是一个已知问题:

要升级与UDF关联的共享库,发出Drop函数语句,升级共享库,然后发出创建函数语句。如果首先升级共享库,然后使用Drop函数,则服务器可能会崩溃。

确实确实发生了崩溃,后来删除函数崩溃的任何尝试,即使我完全从插件目录中删除了DLL。在开发过程中,我不断替换定义UDF函数的库。今天,我已经从头开始重新安装了MySQL,宁愿不再这样做。除了更加谨慎之外,我还能做些什么清理mysql。*手动表以删除功能?

编辑:经过一些修补后,数据库似乎已经解决了崩溃的模式,直到我删除了有问题的DLL,然后发出Error Code: 1305: FUNCTION [schema].[functionName] does not exist。如果我尝试将函数删除为root,则会获得相同的消息,但没有模式前缀。

SELECT * from mysql.func显示该功能。如果我手工删除记录,我会收到相同的1305错误。

mysql架构中系统表中的许多数据在首次触摸时存储在内存中。之后,除非将服务器重新启动,否则通过手动修改表可能没有预期效果。

对于授予表来说,提供了一种提供任何缓存数据的机制-FLUSH PRIVILIGES-但是对于其他表格,例如func和时区表,确保手动更改对表的唯一某种方法都可以使用要考虑的是重新启动服务器过程。