转载自:http://bbs.qcloud.com/thread-5026-1-1.html
原文:
之前我也写过几个网站排障方面的文章,这次给大家带来的是一次排查服务器操作卡顿问题的排障心得。
我的一台服务器,使用的云硬盘,通过phpstudy 搭建的web环境测试用的,本身云硬盘的服务器目前会有卡的情况,今天登录服务器发现卡的非凡,打开个我得电脑都要显示未响应状态。
首先赶快查看cpu和内存占用情况,发现根本没有什么占用嘛。
但还是好卡。就去看服务器的连接数状况。发现除了我自己,根本没有人。。。那为什么卡呢,我开始觉得是服务器问题,可前几天没安装环境的时候一点不卡的,所以我从服务器环境入手,查看 iis mysql等进程,终于我发现 mysql进程的句柄数居然达到4W多。
这个很不正常,赶快查看 mysql 的配置文件,发现phpstudy 的mysqlnnodb_buffer_pool_size 参数默认 为47M:
这个参数每 MB 增加约 3000 的句柄数占用,设置的过大,会导致system的swap空间被占用,导致操作系统变慢,从而减低sql查询的效率。然后我把mysql nnodb_buffer_pool_size 这个参数调整到8M innodb_flush_log_at_trx_commit 这个参数 默认为1 ,设置成2保存,重启mysql 句柄数马上降到7000左右。服务器马上就不卡了。
原文结束!
补充:
该配置文件在my.ini(MySQL安装目录可找到)中: