Chinaunix首页 | 论坛 | 博客
  • 博客访问: 303387
  • 博文数量: 153
  • 博客积分: 3347
  • 博客等级: 中校
  • 技术积分: 1556
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-30 17:50
文章分类

全部博文(153)

文章存档

2013年(7)

2012年(21)

2011年(46)

2010年(16)

2009年(63)

我的朋友

分类: 系统运维

2012-12-20 14:01:34

刚接手一个新网站,用户反应网站打开太慢.

1.询问了网站每天用户访问量, 但并不高,不过百万. 理论上讲不可能这么慢.
  判断:普通网站,一台服务器 不超过100W访问量,不应该产生问题.
       而且我们是两台服务器 Web与Mysql分离.

2.查看Web服务器的 资源使用情况, 偶尔有峰值,但并不严重.
  这步使用top命令即可.
  判断:问题是不是出在数据库服务器上.

3.查看数据库服务器的资源使用情况,发现MYSQL进程经常出现 CPU占用过高.
  这步仍旧使用top命令.
  判断:MYSQL 有问题.

4.查看MYSQL进程.  使用数据库命令 show full processlist;  并频繁刷新
  经常显示一些SQL语句, 有些语句执行时间较长.
  判断:查询语句有问题.
     但不能确定哪些语句有问题.

5.修改MYSQL配置,记录慢查询. 设置为1秒.  没办法再小了.  记录所有超过1秒的查询.
  这步 修改mysql.ini
 
6.等待一段时间后,查看日志.  发现有一条语句 出现次数较多.

7.在MYSQL中执行此语句 , 时间较长,超过1秒. 
  可以确定,问题出在这条语句上.

8.分析此语句,使用 desc select ......
  发现索引使用不佳.  语句就不给大家看了. 这是一条 多表联合查询语句

9.查看相应表的 索引,发现有一个 表连接对应的字段没有索引.

10.建立一个相应的索引.

11.清空 慢查询日志,再继续观察.
   发现情况得到很大缓解.

12.网站访问速度 有所提升,虽然仍不理想,但已经不会出现卡死的情况了.

  以后继续分析 程序,后继文章中记录.

阅读(461) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~