大家好! 我的应用设置为 300个连接时候,连接数据库出现异常:
"Error connecting to database: (using class org.gjt.mm.mysql.Driver)
Data source rejected establishment of connection, message from server: "Too man
y connections"如果我把连接数调到 3000,又会出现异常:
"Caused by: java.sql.SQLException: Out of memory (Needed 257408 bytes)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2975)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1600)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1695)"是不是MySQL的连接数和内存是互相影响的? 每次增加一个连接需要申请多少M内存?? 我得机器是双核CPU,8g内存,应该都够用的,请问MySQL出现这2个异常应该怎样调节参数呢?谢谢!
"Error connecting to database: (using class org.gjt.mm.mysql.Driver)
Data source rejected establishment of connection, message from server: "Too man
y connections"如果我把连接数调到 3000,又会出现异常:
"Caused by: java.sql.SQLException: Out of memory (Needed 257408 bytes)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2975)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1600)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1695)"是不是MySQL的连接数和内存是互相影响的? 每次增加一个连接需要申请多少M内存?? 我得机器是双核CPU,8g内存,应该都够用的,请问MySQL出现这2个异常应该怎样调节参数呢?谢谢!
set-variable = max_connections=500或在启动命令中加上参数 max_connections=500
就是修改最大连接数,然后重启mysql.默认的连接数是100,太少了,所以容易出现如题错误.
set-variable = max_connections= 10000然后Save modification 保存修改。
最后把mysql重新启动一次即可。
y connections"的错误,但是又报Out of memory ????
然后在java应用里使用连接池,最大连接数搞成200个,也足够了。
连接、断开也慢
不能理解的是为什么我机器内存越大,给MySQL分配的内存越大反而也会出现问题? 数据库不是分配可使用的内存越大越好吗? 我的机器有 8G足够了. 哪里看是连接独享? 独享需要修改哪些设置? 谢谢!
http://bbs.chinaunix.net/thread-1219829-1-3.html