索引多,更新速度慢了很多。怎么办?100分请教高手(100分)

  • 主题发起人 主题发起人 study2003
  • 开始时间 开始时间
S

study2003

Unregistered / Unconfirmed
GUEST, unregistred user!
现在数据库一共有20多个表,每个表如有
id,name,path,singerid,cdid,forshort,leixin
因为每一个字段都有可能查到,所以我每个字段都各自设为索引。
现在数据库超过100万条数据,更新速度很慢。请各位高手出点意见。好吗?
索引多,有什么坏处呢?怎么解决呢?
 
為每個字段設索引,這是一種不明智的行為。建索引應該有選擇的建立(一般不超過三到四個)並非越多越好
這樣一來如果操作用戶多了出現死鎖就麻煩了.
 
千万不要为每一个字段建索引,你可以综合分类,建立联合索引,几个经常一起使用的字段
建一个索引。如果无法分类,那说明系统总体设计有问题,最好把客户的要求重新分析。
 
这说明你的数据库设计可能存在很大问题,
出现这种情况主要是因为你没有按照数据库
范式的要求来设计数据库建议你画出E-R图,
然后逐步分析精简表结构,至少达到第三范
式的要求。当然每个表只有一个索引还是很
难的,但完全可以精简的低于四个,如果多
于四个你会发现大数据量时表插入操作为了
维护索引所花费的开销是很惊人的。
 
同意楼上的[^]
 
多索引文件的数据库最好是应用于查询用途,而不是更新!因为每次更新,除了更新数据表外,
还要更新各个索引文件的资料,数据量大时是非常耗时的!



 
后退
顶部