日期:2014-05-17  浏览次数:20400 次

Too Many Connections的问题。
我数据库用的是MYSQL 

先贴出我连接数据库的代码:
VB.NET code

        Public Sub New()
            connectingstring = System.Configuration.ConfigurationSettings.AppSettings("Conn").ToString.Trim
            'connectingstring = "server=localhost;user id=root;pwd=;database=proto_management"
            myConn = New MySqlConnection(connectingstring)
            'Close()
        End Sub

        Public Sub Close()
            myConn.Close()
            myConn.Dispose()
        End Sub


我是调用web.config的connection来连接数据库的

再贴出我web.config的代码:
XML code
    <connectionStrings>
  <add name="ConnectionString" connectionString="DSN=MySQL;" providerName="System.Data.Odbc" />
 </connectionStrings>


我每次调用New()都会带上close()的但是当我操作我的程序时。也其实就是增删查改 到不知道多少次的时候就会报出Too Many Connections 的warning。我上网查过 他们说改mysql的配置文件把连接端口增加到10000或者更多,但是这并不能根治Too Many Connections的错误。

其实这个错误就是打开端口过多。但是我每次打开端口的时候都调用了close的函数了啊。为什么端口还是存在呢?是挂在内存里面吗?我后来在close()的函数里面再加了dispose。但是一点效果都没有,还是继续Too Many Connections。请大家帮忙解答,解答。因为代码过多。在这不好贴出来。这个程序我是用类集约函数的。当需要连接的时候NEW()close()都是在这个类里面调用。这个类里面还有很多绑定函数,期间都有调用到NEW()而且每次最后都会close().请大家帮我分析分析 谢谢。

------解决方案--------------------
给你一个建议:
声明两个int变量intNew和intClose,每次New()的时候intNew++,每次Close()的时候intClose++,
在报错的时候看看两个变量的差是否>1或更多