42G的数据库文件运行在sql 2005上,读写性能几乎长期100%

byboy8 2010-10-14 08:29:43
最近一直运行正常的一个论坛程序突然运行缓慢,此论坛数据库采用sql server 2005,数据库数据文件达到42GB,以前运行基本正常,最近一段时间,论坛缓慢,通过性能监视器,硬盘读写这块基本是100%占用,论坛本身的设定未作改变,此服务器的配置是4G内存,双xeon的IBM 3650,由于没有过运行这么大数据库的经验,经查硬盘本身无问题,我现在不能确定问题的所在,是数据库太大导致运行缓慢吗?还是其他原因,请赐教。
...全文
132 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
蓝海 2010-11-03
  • 打赏
  • 举报
回复
对了,可能有一些初学的人会不明白建索引的真正道理:

如:程序中经常要用到这样一个查询语句 SELECT * FROM TBUSER where uID>100 and uID<1000 and moneyA > 1000 and moneyA<10000

那么,有的人可能会分别建立2个uID,moneyA字段的索引,

但实际上索引应该是这样的:建立1个 uID+moneyA 组合起来的索引才真正有用;

(呵呵,是我假想遇到过这样的新同事的,现实中希望不会有!)楼上不小心给点着“提交回复”了!

蓝海 2010-11-03
  • 打赏
  • 举报
回复
对了,可能有一些初学的人会不明白建索引的真正道理:

如:程序中经常要用到这样一个查询语句 SELECT * FROM TBUSER where uID>100 and uID<1000 and money

那么,有的人可能会分别建立3个NAME,SEX,OFFICE字段的索引,

但实际上索引应该是这样的:建立1个 NAME+SEX+OFFICE 组合起来的索引才真正有用;

(呵呵,是我假想遇到过这样的新同事的,现实中希望不会有!)
蓝海 2010-10-15
  • 打赏
  • 举报
回复
1、表结构是否合理:即相关表是否有主键,是否为必要的字段创建了索引等等!

2、是不是可以排除有人恶意攻击?
Rotel-刘志东 2010-10-15
  • 打赏
  • 举报
回复
---硬盘读写这块基本是100%占用
1、说明磁盘存在I/O瓶颈呀!把数据文件.mdf和日志文件.log文件放在不同的磁盘分区。
2、硬件加大内存最好8G以上,如果服务器为32位,最好启用awe,这样读取文件时历史查询会存在
缓存中,不会在额外的消耗I/O资源。
3、从读写速度来看--cpu--内存-硬盘盘顺序,硬盘是最慢的。
4、最坏更换服务器提高硬件配置内存、硬盘、cpu的配置。
dawugui 2010-10-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 byboy8 的回复:]
最近一直运行正常的一个论坛程序突然运行缓慢,此论坛数据库采用sql server 2005,数据库数据文件达到42GB,以前运行基本正常,最近一段时间,论坛缓慢,通过性能监视器,硬盘读写这块基本是100%占用,论坛本身的设定未作改变,此服务器的配置是4G内存,双xeon的IBM 3650,由于没有过运行这么大数据库的经验,经查硬盘本身无问题,我现在不能确定问题的所在,是数据库太大导致运行缓慢吗?还……
[/Quote]
先看看引起问题的地方所在.
然后重建索引,优化查询.
obuntu 2010-10-14
  • 打赏
  • 举报
回复
跟数据量关系不大,要看你的执行语句,在执行慢的时候,通过观察语句来判断吧。
看是否由锁引起的,还是由性能瓶颈引起的。
网上有很多这类的脚本。

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧