Mysql 错误too many connections解决方案
Mysql错误提示toomanyconnections,最近遇到这个错误,经过上网查资料解决了,这里记录下,帮助有需要的朋友,
解决方法是修改/etc/mysql/my.cnf,添加以下一行:
set-variable=max_connections=500
或在启动命令中加上参数max_connections=500
就是修改最大连接数,然后重启mysql.默认的连接数是100,太少了,所以容易出现如题错误.
以下是mysql.com网站的相关说明:
IfyougetaToomanyconnectionserrorwhenyoutrytoconnecttothemysqldserver,thismeansthatallavailableconnectionsareinusebyotherclients.
Thenumberofconnectionsallowediscontrolledbythemax_connectionssystemvariable.Itsdefaultvalueis100.Ifyouneedtosupportmoreconnections,youshouldrestartmysqldwithalargervalueforthisvariable.
mysqldactuallyallowsmax_connections+1clientstoconnect.TheextraconnectionisreservedforusebyaccountsthathavetheSUPERprivilege.BygrantingtheSUPERprivilegetoadministratorsandnottonormalusers(whoshouldnotneedit),anadministratorcanconnecttotheserveranduseSHOWPROCESSLISTtodiagnoseproblemsevenifthemaximumnumberofunprivilegedclientsareconnected.SeeSection13.5.4.19,“SHOWPROCESSLISTSyntax”.
ThemaximumnumberofconnectionsMySQLcansupportdependsonthequalityofthethreadlibraryonagivenplatform.LinuxorSolarisshouldbeabletosupport500-1000simultaneousconnections,dependingonhowmuchRAMyouhaveandwhatyourclientsaredoing.StaticLinuxbinariesprovidedbyMySQLABcansupportupto4000connections.
1.可能是mysql的maxconnections设置的问题
2.可能是多次insert,update操作没有关闭session,需要在spring里配置transaction支持。
解决:
1.修改tomcat里的session的time-out时间减少为20,(不是必改项)
2.对处理量大的对数据库insert或update的操作提供transaction支持.
=======================================
下面的是解决办法:
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:Datasourcerejectedestablishmentofconnection,messagefromserver:"Toomanyconnections"
原因:
因为你的mysql安装目录下的my.ini中设定的并发连接数太少或者系统繁忙导致连接数被占满
解决方式:
打开MYSQL安装目录打开MY.INI找到max_connections(在大约第93行)默认是100一般设置到500~1000比较合适,重启mysql,这样1040错误就解决啦。
max_connections=1000
一定要重新启动MYSQL才能生效
CMD->
netstopmysql
netstartmysql
关于改变innodb_log_file_size后无法启动mysql的问题
innodb_buffer_pool_size=768M innodb_log_file_size=256M innodb_log_buffer_size=8M innodb_additional_mem_pool_size=4M innodb_flush_log_at_trx_commit=0 innodb_thread_concurrency=20
以上是对innodb引擎的初步优化,发现是更新innodb_log_file_size=256M时候出现了问题,只要加上这个就无法启动,
后来才知道原来要STOP服务先,然后再删除原来的文件………
打开/MySQLServer5.5/data
删除ib_logfile0,ib_logfile1........ib_logfilen
再开启选项,成功启动。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!