sql2000 查询速度慢的原因 2009 年10 月13 日 星期二 10:53 查询速度慢的原因很多,常见如下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O 吞吐量小,形成了瓶颈效应
3、没有创建计算列导致查询不优化
4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8、sp_lock,sp_who,活动的用户查看,原因是读写竞争资源
9、返回了不必要的行和列 10、查询语句不好,没有优化 ●可以通过如下方法来优化查询 : 1、把数据、日志、索引放到不同的I/O 设备上,增加读取速度,以前可以将 Tempdb应放在 RAID0 上,SQL2000 不在支持
数据量(尺寸)越大,提高I/O 越重要
2、纵向、横向分割表,减少表的尺寸(sp_spaceuse) 3、升级硬件 4、根据查询条件,建立索引,优化索引、优化访问方式,限制结果集的数据量
注意填充因子要适当 (最好是使 用默 认 值 0)
索引应该 尽 量小,使 用字 节 数小的列建索引好(参 照 索引的创建),不要对 有限的几个 值 的字 段 建单 一 索引如性别 字 段 5、提高网速; 6、扩 大服 务 器 的内存,Windows 2000 和SQL server 2000 能 支持 4-8G 的内存
配 置 虚 拟 内存:虚 拟 内存大小应基 于 计算机 上并 发 运 行的服 务 进 行配 置
运 行 Microsoft SQL Server
2000 时 ,可考 虑 将虚 拟 内存大小设置 为 计算机 中 安 装的物 理 内存的 1
如果另 外 安 装 了全 文 检 索功 能 ,并 打 算运 行 Microsoft 搜 索服 务 以便