我的程序是100个线程,每个线程向MySql插入2条数据,运行过程中大概运行到第60号线程时提示连接失败,等程序运行完毕,查看MySql数据表,发现插入了98条数据。
解决办法:
在MySql安装目录中找到my.ini,将其中的max_connections=100改为max_connections=10000
按理说,100线程应该是够用的,后来发现自己的代码有问题,每次插入数据后没有及时关闭连接,这样造成了连接资源的浪费,再加上连续运行程序,上次的连接还没释放,这次又要用掉100个连接,所以就不够用了。
解决办法:
插入数据后及时关闭连接。即使重新改回max_connections=100,程序也可以正常运行。