我的服务器上的SQL处理能力好象有点低,CUP使用率一直在10%-20%之间,下面网络连接数量30多个,查询操作也很频繁!但是速度非常慢!为什么CUP使用率那么低,哪里能设置来提高SQL的处理能力?谢谢了!
服务器配置:
CUP:双CUP 智强3。0
内存:1G
系统:WIN2000 ADVANCED SERVER 高级服务器版
SQL:企业版,打了SP4补丁
服务器配置:
CUP:双CUP 智强3。0
内存:1G
系统:WIN2000 ADVANCED SERVER 高级服务器版
SQL:企业版,打了SP4补丁
你的处理经常进行全表扫描, 则这会导致频繁的磁盘I/O的高的内存消耗
该一条SQL能批量处理完成的情况, 你却要写几个SQL, 查出结果后再做判断, 分析及处理
开始--程序--MS SQLSERVER
--事件探察器(SQL Profiler)
--文件
--新建--跟踪...
--设置要跟踪的服务器的信息(连接服务器)--确定
--设置跟踪的项目...
--然后数据库的调用情况就会显示出来在跟踪项目设置中,如果不熟悉的话,一般用默认设置
筛选项目有几个可以注意一下:1.DatabaseName 同于你要监测的数据库名(不过这个好像不起作用,我的电脑上设置无效)
2.DatabaseID 同于你要检测的数据库的dbid,可以用 select db_id(N'你要监测的库名')得到dbid
3.ObjectName 同于你要监测的对象名,例如表名,视图名等
4.ObjectID 同于你要监测的对象的id,可以用 select object_id(N'你要监测的对象名')得到id
5.Error 同于错误,如果经常出现某个编号的错误,则针对此错误号
6.Seccess 同于0,失败,1,成功,如果是排错,就过滤掉成功的处理
sp_who
开始--程序--运行--输入 taskmgr--确定在进程中, 看看 sqlserver.exe 这个进程的内存使用和磁盘I/O, I/O的这个, 默认下是没有的, 单击"查看"--选择列--把I/O相关的勾上就有了