资源描述:
《sqlserver异常以及系统函数》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Sqlserver数据库异常数据库对象异常常见数据库对象主要包括:数据库表(able)索引(Index)视图(View)图表(Diagram)缺省值(default)规则(Rule)触发器(Trigger)存储过程(Storedprocedure)用户(User)数据库监视服务器运行情况查看当前缓存哪些批处理或过程占用了大部分的CPU资源使用sql语句SELECTTOP50SUM(qs.total_worker_time)AStotal_cpu_time,SUM(qs.execution_count)AStotal_execution_count,COUNT(*)ASnumber_of
2、_statements,qs.sql_handleFROMsys.dm_exec_query_statsASqsGROUPbyqs.sql_handleORDERBYSUM(qs.total_worker_time)DESC运行结果2000无效对象名'sys.dm_exec_query_stats'无效。运行得到的数据项total_cup_time总工作时间total_execution_count执行行数number_of_statements,查询行数sql_handle不解(sql执行????????????)查询缓存计划所占用的CPU总是用率(带sql文本)执行以下sql语句S
3、ELECTtotal_cpu_time,total_execution_count,number_of_statements,s2.text--(SELECTSUBSTRING(s2.text,statement_start_offset/2,((CASEWHENstatement_end_offset=-1THEN(LEN(CONVERT(NVARCHAR(MAX),s2.text))*2)ELSEstatement_end_offsetEND)-statement_start_offset)/2))ASquery_textFROM(SELECTTOP50SUM(qs.total_w
4、orker_time)AStotal_cpu_time,SUM(qs.execution_count)AStotal_execution_count,COUNT(*)ASnumber_of_statements,qs.sql_handle--,--MIN(statement_start_offset)ASstatement_start_offset,--MAX(statement_end_offset)ASstatement_end_offsetFROMsys.dm_exec_query_statsASqsGROUPBYqs.sql_handleORDERBYSUM(qs.total_
5、worker_time)DESC)ASstatsCROSSAPPLYsys.dm_exec_sql_text(stats.sql_handle)ASs2运行的到的结果2000报错第19行:'APPLY'附近有语法错误。运行得到的数据项total_cup_time总工作时间total_execution_count执行行数number_of_statements,查询行数text执行的sql文本查询显示哪个查询占用了最多的CPU累计使用率。SELECThighest_cpu_queries.plan_handle,highest_cpu_queries.total_worker_time
6、,q.dbid,q.objectid,q.number,q.encrypted,q.[text]from(selecttop50qs.plan_handle,qs.total_worker_timefromsys.dm_exec_query_statsqsorderbyqs.total_worker_timedesc)ashighest_cpu_queriescrossapplysys.dm_exec_sql_text(plan_handle)asqorderbyhighest_cpu_queries.total_worker_timedesc2000错误第16行:'apply'附近有
7、语法错误。参考资料地址http://technet.microsoft.com/zh-cn/library/bb838723(office.12).aspx参考除CPU外还有IO和内存的瓶颈数据库异常问题数据库空间问题:使用语句:execsp_MSforeachtable"execsp_spaceused"或者Execsp_spaceused可以得到数据库大小信息执行后得到数据如下Sql2000可以运行运行sql语句得到的数据项Database