追踪mysql阻塞的问题

这两天总是会出现fcgi程序挂住,不能继续处理的问题,通过日志发现是在mysql的execute接口出问题,strace进程看到
 
strace -p 3497
Process 3497 attached - interrupt to quit
read(5, 

 
而又通过lsof -p pid


xxx 6155 xxx      5u  IPv4 1631647335              TCP x.x.x.x:52547->x.x.x.x:mysql (ESTABLISHED)
xxx 6155 xxx     6u  IPv4 1631647336              TCP x.x.x.x:52548->x.x.x.x:mysql (ESTABLISHED)
xxx 6155 xxx     7u  IPv4 1631647337              TCP x.x.x.x:52549->x.x.x.x:mysql (ESTABLISHED)

命令可以看到,
这个fd=5的句柄实际是以某一个mysql的连接,这样就确定所有的进程都堵死在这个连接上,一直等待回包,因而确定为网络原因。或者是mysql产生死锁
接下来就是查看mysql的状态了

你可能感兴趣的:(mysql,tcp,网络)