MySQL 存储过程运行的内存管理

  • 一、讲解例子
  • 二、function内存管理过程讲解
  • 三、function内存管理过程图例
  • 四、总结

一、讲解例子

MySQL的存储过程在运行过程中的内存管理跟table等运行时候是不一样的,它涉及多层内存管理,在开发时候如果不注意内存管理很容易造成内存泄露。接下来我用以下function的例子来说明,procedure的也是类似的,只是少了return result的过程。

function语句示例:

set global log_bin_trust_function_creators=1;CREATE FUNCTION f1 (a VARCHAR(32)) RETURN VARCHAR(32) no sqlis result VARCHAR(32);BEGIN  result := CONCAT(a,'y');  RETURN(result);END;