免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 10606 | 回复: 8
打印 上一主题 下一主题

mysql time_wait 超多 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-08-16 17:00 |只看该作者 |倒序浏览
tcp        0      0 192.168.113.101:40312       192.168.113.202:3306        TIME_WAIT   
tcp        0      0 192.168.113.101:40315       192.168.113.202:3306        TIME_WAIT   
tcp        0      0 192.168.113.101:40293       192.168.113.202:3306        TIME_WAIT   
tcp        0      0 192.168.113.101:40289       192.168.113.202:3306        TIME_WAIT   
tcp        0      0 192.168.113.101:40291       192.168.113.202:3306        TIME_WAIT   
tcp        0      0 192.168.113.101:40300       192.168.113.202:3306        TIME_WAIT   
tcp        0      0 192.168.113.101:40296       192.168.113.202:3306        TIME_WAIT   
tcp        0      0 192.168.113.101:40647       192.168.113.172:3306        TIME_WAIT   
[root@web1 etc]# netstat -n |grep :3306|wc -l
2726
[root@web1 etc]# netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
ESTABLISHED 508
FIN_WAIT1 53
CLOSING 1
TIME_WAIT 4782
[root@web1 etc]#

一般的优化都已经做过:

net.ipv4.tcp_syncookies=1
net.ipv4.tcp_max_syn_backlog=2048
net.ipv4.tcp_synack_retries=2
net.ipv4.tcp_syn_retries=3

net.ipv4.tcp_timestamps=0

net.ipv4.tcp_fin_timeout=30
net.ipv4.tcp_keepalive_time=1800
net.ipv4.window_scaling=0
net.ipv4.tcp_sack=0

net.ipv4.tcp_tw_recycle=1
net.ipv4.tcp_tw_reuse=1

大伙帮看看是什么原因?
是php调用MYSQL时执行后没有关闭连接造成的吗?默认情况下PHP也会自动关闲的啊。
郁闷!

论坛徽章:
0
2 [报告]
发表于 2007-08-16 17:13 |只看该作者
正常。

论坛徽章:
0
3 [报告]
发表于 2007-08-16 21:00 |只看该作者
mysql的 wait_timeout 设置多少

论坛徽章:
0
4 [报告]
发表于 2007-08-17 09:21 |只看该作者
原帖由 yejr 于 2007-8-16 21:00 发表
mysql的 wait_timeout 设置多少


[mysqlhotcopy]
interactive-timeout=1200
max_connections=3000
wait_timeout=600
使用的应该是默认值。
这个地方的参数需要调整吗?

论坛徽章:
0
5 [报告]
发表于 2007-08-17 22:07 |只看该作者
nteractive-timeout=1200
wait_timeout=600

把这2个选项同时也放到 [mysqld] 部分里,你是通过什么方式链接到mysql的?

论坛徽章:
0
6 [报告]
发表于 2007-08-20 16:28 |只看该作者
原帖由 yejr 于 2007-8-17 22:07 发表
nteractive-timeout=1200
wait_timeout=600

把这2个选项同时也放到 [mysqld] 部分里,你是通过什么方式链接到mysql的?


在php代码中链接到MYSQL,具体我不知道使用的是持久性联系还是普通的链接方式。
因为我是做网站维护的,开发是另一个团队的人在做。

论坛徽章:
0
7 [报告]
发表于 2007-08-21 22:00 |只看该作者
那就叫他一起来看这个帖

论坛徽章:
0
8 [报告]
发表于 2011-06-16 14:56 |只看该作者
我也遇到同样的问题 用ssh 远程登录系统时很慢,很久才进入到系统,进入系统后,发现负载也不是很高,就是mysql占用的资源比较多一点而已,系统运行还是正常的,认真看了一下,发现在系统中出现大量的TIME_WAIT,用netstat -talnp | grep TIME_WAIT | wc -l 一看,竟然有几千个

[root@localhost ~]# netstat -talnp | grep TIME_WAIT | wc -l
3953

解决方法,通过调整内核参数:

我们修改为:

[root@localhost ~]# sysctl -w net.ipv4.tcp_syncookies="1"
net.ipv4.tcp_syncookies = 1

[root@localhost ~]# sysctl -w net.ipv4.tcp_tw_reuse="1"

net.ipv4.tcp_tw_reuse= 1

[root@localhost ~]# sysctl -w net.ipv4.tcp_tw_recycle="1"

sysctl -w net.ipv4.tcp_tw_recycle= 1

[root@localhost ~]# net.ipv4.tcp_fin_timeout="30"
net.ipv4.tcp_fin_timeout= 30

以上只是暂时的解决方法,多数是因为系统中,程序代码中没有使用mysql_close()。

详情请看 陈亦电子商务SEO博客  解决TIME_WAIT太多解决TIME_WAIT太多
以下是连接地址:
http://blog.sina.com.cn/s/blog_467b0fd50100sfwk.html

论坛徽章:
0
9 [报告]
发表于 2011-06-20 11:56 |只看该作者
应用层的问题,建议应用层多用长连接。

而不是短连接,否则就会有这个问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP