单位的门户网站,用的PHP5.2.0+mysql5。
该网站用了一段时间以后,页面就加载不出来了。查了下原因,是访问数据库记录文章信息的表的查询超时。用navicat工具访问数据库,可以连接,但是打开该文章表速度会比较慢,但是10秒左右也能打的开。该表数据量不多,才4000多条记录而已。如果页面上没有访问该表的语句,页面可以正常加载,就是说访问其他表都正常,就这一张表会超时。
这种情况出现了3次了,平均1个月多点就出一次,每次只能把服务器重启才有用,单独重启数据库都没效果。
不知道到底是什么原因啊。
开启下mysql的慢查询. 看看是否存在过多的慢查询语句. 具体开启方式可以百度
在数据库访问比较慢的情况下. 执行 show processlist 看下进程是否过多.
找出慢查询之后, 可以针对sql进行优化.
加加索引应该就能解决.
my.cnf 的配置可以参考网上的方案进行优化....
(按说...4000条数据根本就不是个问题....)
追问要等到下次出问题估计还要等个把月,问题在于内网平台不能长时间断着,没有充足的时间给我排查问题。而且考虑只有这一张表会出问题,我都怀疑是不是apache的问题。
追答一般不会是apache的问题. 看下php的error_log吧
本回答被提问者和网友采纳