The 6.x mySql Connector for .NET comes with two performance counters that seem to be working rather well. If I call the same stored procedure 1,000 times… the metadata is only retrieved from the server the first time. All subsequent calls utilize the client-side cache. You can see this using the Performance Monitor graph in Control Panel -> Administrative Tools -> Performance.
Also, you have set the following parameter in your connection string:
Use Performance Monitor=true;
HardProcedureQueries – The number of times a procedures metadata had to be queried from the server.
SoftProcedureQueries – The number of times a procedures metadata was retrieved from the client-side cache.