我的MySQL 5.0数据库,用C#连接,做了个测试,发现同时只能上100个连接,便修改了安装目录下的my.ini文件:
max_connections=1000
现在1000个连接是可以了,但我试了下5000个连接还是不行,2000个也不行。即使设成max_connections=5000也不行。
连接字符串里已经加了max pool size=5000了。网上查了很多资料,都不行,好像说当线程数增加到一定数时就无法再增加连接了。
想想SQL Server 2005 开发版连接10000个连接都可以啊。希望能有解决办法。谢谢~~

解决方案 »

  1.   

    mysql的最大连接数默认是100, 最大可以达到16384显示连接不上报的什么错误
      

  2.   

    Can't create a new thread (errno 12); if you are not out of available memory, you can consult the manual for a possible OS-dependent bug 我用任务管理器观测了整个过程,内存还有很多是空闲的,我的物理内存是2GB。
      

  3.   

    系统是win2003SP2,已经打上所有补丁。
      

  4.   

    http://bugs.mysql.com/bug.php?id=28387
      

  5.   

    连接数并不等同于一定是线程数。
    SQLServer采用的是工作线程模型。5000个未必就创建了5000个线程。
    MySQL则是一连接一线程,5000个似乎太大了。
      

  6.   

    我明白了,似乎就是单个进程创建的线程数超过了操作系统的限制。那么怎么解决呢?难道就只能同时1000多个连接吗?那MySQL的最大连接数16384不就是摆设了?
      

  7.   


    看你的mysql版本了,最新的版本的连接可以达到10000了!
    当然了,你的内存要足够才行,不然开到了6000个连接的时候,out of memery!那就惨了,直接hang了。
      

  8.   

    我装了最新的也不行哦,报同样的错,可能是windows下线程数的限制吧。