设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 51|回复: 5
打印 上一主题 下一主题

有关网站的数据库方面的优化

[复制链接]
跳转到指定楼层
1#
发表于 2008-12-18 02:13:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
今天要说的网站的优化是指数据库方面的, 网站运行的快慢, 数据库是一个比较重要的方面, 特别
是对于大数据量的网站来说。
    今年年初准备做一个有关博客收集的网站,于是在汇网——双线主机网
(http://www.shuangxian.com)买了一个空间,因为是双线的空间,一开始的时候速度是相当的快,但
在运行两个月之后,逐渐感到速度降下来了,难道空间不稳定了?于是我找客服提出了我的问题,后来
在耐思尼克的技术部的检查下,通知我说是因为我的数据库的数据量太大了,查询的sql语句也不够优化
,原来查询只需要几毫秒的,因为数据变多而变成了几秒了,所以才会导致网站的速度下降。
  汇网双线主机网给我的答复主要有以下几个方面:  
    1、文章的主体内容不应该放在数据库表中
    2、应该在适当的表的字段给予建索引  
    3、优化查询的SQL语句  
    4、去掉不必要的SQL查询  
  
    于是我去网上狂搜索有关数据库优化的文章。因为我网站就是每天去抓取各大博客网站的一些文章
,所以日积月累也有上10万篇的文章了。我把article表里装载的文章内容提取出来,放在空间文件夹中
,作为一篇文章一个文件这样,在需要读取文章的时候才去读文件。当然这里就要牺牲了搜索全文的功

能了。接着我在程序里把每一个sql的执行都记录下来,发现执行最多的是类似这样的一条语句select *
from article  where tag like '%体育%',这个消耗时间相当高,于是把tag提取出来做一个单独的
tags表,于是查询变成 select a.* from article a,tags t wherea.IDAritle=t.fIDAritle and
t.name='体育'。(关于tag就不详细说了,本来有关这个tag就已经可以说一篇文章了)接着我在
article表的字段athor,fromurl等上建立索引。
    原来查询要消耗几秒钟的SQL语句,一下子就减少到了0.001秒以下了。这里要谢谢双线客服对于我
的问题的提出的解决方案,也让我认识到原来做海量数据的网站,数据库原来是这么重要的,希望各位
网友也能从中了解到一点。
2#
发表于 2009-11-24 01:05:10 | 只看该作者
楼主,你写得实在是太好了。我惟一能做的,就只有把这个帖子顶上去这件事了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-19 02:36 , Processed in 0.102030 second(s), 10 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表