六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 23|回复: 0

mysql 报错 Too many connections

[复制链接]

升级  10%

15

主题

15

主题

15

主题

秀才

Rank: 2

积分
65
 楼主| 发表于 2013-1-31 11:19:18 | 显示全部楼层 |阅读模式
写完的项目在本次测试没事,但是转移到实际项目中出现问题。报错如下:Data source rejected establishment of connection,  message from server: "Too many connections"
 
网上很多人都是这样说的,
1.可能是mysql的max connections设置的问题
2.可能是多次insert,update操作没有关闭session,需要在spring里配置transaction支持。
解决:
1.修改tomcat里的session 的time-out时间减少为20,(不是必改项)
2.对处理量大的对数据库insert或update的操作提供transaction支持.

原因:
mysql安装目录下的my.ini中设定的并发连接数太少或者系统繁忙导致连接数被占满

解决方式:
打开MYSQL安装目录打开MY.INI找到max_connections(在大约第93行)默认是100 一般设置到500~1000比较合适,重启mysql,这样1040错误就解决啦。
max_connections=1000
一定要重新启动MYSQL才能生效
CMD->
net stop mysql
net start mysql
 
但是由于项目的实际服务器在linux上,所以需要修改linux下 my.cnf
 
<div class="cnt"># vi /etc/my.cnf
 
//添加以下行
 
[mysqld]
set-variable=max_connections=1000
set-variable=max_user_connections=500

set-variable=wait_timeout=200
 
//max_connections设置最大连接数为1000
//max_user_connections设置每用户最大连接数为500
//wait_timeout表示200秒后将关闭空闲(IDLE)的连接,但是对正在工作的连接不影响。
//保存退出,并重新启动MySQL
 
/etc/init.d/mysql restart
 
//重新启动MySQL后使用下面的命令查看修改是否成功
# mysqladmin -uroot -p variables
Password:
//可以看到以下项说明修改成功
| max_connections                 | 1000
| max_user_connections            | 500
| wait_timeout                    | 200
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表