我正在使用MySql Connector / Net 6.8.3对.Net应用程序进行故障排除。由于多种原因,性能很糟糕,其中一个原因是每次调用存储过程时都会对数据库运行以下查询:
SELECT * FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA LIKE 'myschema' AND ROUTINE_NAME LIKE 'myproc';
在我看来,每次调用proc时,MySql Connector都会检查存储的proc是否存在(并且可能是检查参数)。由于存储过程调用的数量,这累积地增加了很多开销。
是否有方便的方法来关闭此行为,或者可能缓存有关存储过程的信息?
答案 0 :(得分:0)
最终我在MySQL的.Net驱动程序中发现了一个错误。这里描述:http://bugs.mysql.com/bug.php?id=74116
(甲骨文非常友好地发送给我a t-shirt for submitting a patch,虽然它似乎还没有被合并。)