SQL Server DBA日常查询视图_数据库性能视图
1.获取有关按平均CPU 时间排在最前面的五个查询的信息
- SELECT TOP 5 total_worker_time/execution_count AS [Avg CPU Time],
- SUBSTRING(st.text, (qs.statement_start_offset/2)+1,
- ((CASE qs.statement_end_offset
- WHEN -1 THEN DATALENGTH(st.text)
- ELSE qs.statement_end_offset
- END - qs.statement_start_offset)/2) + 1) AS statement_text
- FROM sys.dm_exec_query_stats AS qs
- CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
- ORDER BY total_worker_time/execution_count DESC;
1.获取有关按平均CPU 时间排在最前面的五个查询的信息
2.返回按批执行的SQL 查询的文本,并提供有关它们的统计信息。
- SELECT top 20
- s2.dbid,
- (SELECT TOP 1 SUBSTRING(s2.text,statement_start_offset / 2+1 ,
- ( (CASE WHEN statement_end_offset = -1
- THEN (LEN(CONVERT(nvarchar(max),s2.text)) * 2)
- ELSE statement_end_offset END) - statement_start_offset) / 2+1)) AS sql_statement,
- execution_count,
- plan_generation_num,
- last_execution_time,
- total_worker_time,
- last_worker_time,
- min_worker_time,
- max_worker_time,
- total_physical_reads,
- last_physical_reads,
- min_physical_reads,
- max_physical_reads,
- total_logical_writes,
- last_logical_writes,
- min_logical_writes,
- max_logical_writes
- FROM sys.dm_exec_query_stats AS s1
- CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS s2
- WHERE s2.objectid is null
- ORDER BY (total_worker_time/execution_count) desc,execution_count desc;
2.返回按批执行的SQL 查询的文本,并提供有关它们的统计信息
3.为变更数据捕获日志扫描会话中遇到的每个错误返回一行
- select * from sys.dm_cdc_errors
为变更数据捕获日志扫描会话中遇到的每个错误返回一行
4.返回有关在服务器上打开时间超过指定时间(小时)的游标的信息
- SELECT creation_time, cursor_id, name, c.session_id, login_name
- FROM sys.dm_exec_cursors(0) AS c
- JOIN sys.dm_exec_sessions AS s ON c.session_id = s.session_id
- WHERE DATEDIFF(hh, c.creation_time, GETDATE()) > 36;
4.返回有关在服务器上打开时间超过指定时间(小时)的游标的信息
5.查找连接到服务器的用户
- SELECT login_name ,COUNT(session_id) AS session_count
- FROM sys.dm_exec_sessions
- GROUP BY login_name;
查找连接到服务器的用户
6.查找长时间运行的游标
- USE master;
- GO
- SELECT creation_time ,cursor_id
- ,name ,c.session_id ,login_name
- FROM sys.dm_exec_cursors(0) AS c
- JOIN sys.dm_exec_sessions AS s
- ON c.session_id = s.session_id
- WHERE DATEDIFF(mi, c.creation_time, GETDATE()) > 5;
6.查找长时间运行的游标
7.查找具有已打开事务的空闲会话
- SELECT s.*
- FROM sys.dm_exec_sessions AS s
- WHERE EXISTS
- (
- SELECT *
- FROM sys.dm_tran_session_transactions AS t
- WHERE t.session_id = s.session_id
- )
- AND NOT EXISTS
- (
- SELECT *
- FROM sys.dm_exec_requests AS r
- WHERE r.session_id = s.session_id
- );
查找具有已打开事务的空闲会话
8.返回前五个查询的SQL 语句文本和平均CPU 时间
- SELECT TOP 5 total_worker_time/execution_count AS [Avg CPU Time],
- SUBSTRING(st.text, (qs.statement_start_offset/2)+1,
- ((CASE qs.statement_end_offset
- WHEN -1 THEN DATALENGTH(st.text)
- ELSE qs.statement_end_offset
- END - qs.statement_start_offset)/2) + 1) AS statement_text
- FROM sys.dm_exec_query_stats AS qs
- CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
- ORDER BY total_worker_time/execution_count DESC;
8.返回前五个查询的SQL 语句文本和平均CPU 时间
9.显示锁信息
- SELECT spid,
- blocked,
- waitresource,
- lastwaittype,
- a.[Text] AS [TextData],
- SUBSTRING(A.text, sp.stmt_start / 2,
- (CASE WHEN sp.stmt_end = -1
- THEN DATALENGTH(A.text)
- ELSE sp.stmt_end END - sp.stmt_start) / 2
- ) AS [current_cmd],
- DB_NAME(sp.dbid) AS DBName,
- program_name,
- sp.loginame,
- sp.hostname
- FROM
- (
- select *
- from sys.sysprocesses b
- where exists (select 1
- from sys.sysprocesses s
- where b.spid = s.blocked
- and s.blocked > 0)
- union
- select *
- from sys.sysprocesses s
- where s.blocked > 0
- ) AS sp OUTER APPLY sys.dm_exec_sql_text (sp.sql_handle) AS A
- ORDER BY blocked DESC, DB_NAME(sp.dbid) ASC, a.[text];
9.1查询锁与Sql语句
- SELECT resource_type, resource_associated_entity_id,
- request_status, request_mode,request_session_id,
- resource_description
- FROM sys.dm_tran_locks
- --WHERE resource_database_id = 6
9.2显示锁信息
- select request_session_id spid,
- OBJECT_NAME(resource_associated_entity_id) tableName
- from sys.dm_tran_locks
- where resource_type='OBJECT'
- ;
9.3查询被锁对象
- declare @spid int
- Set @spid = 57 --锁表进程
- declare @sql varchar(1000)
- set @sql='kill '+cast(@spid as varchar)
- exec(@sql)
9.4解锁:
10.显示阻塞信息
- SELECT
- t1.resource_type,
- t1.resource_database_id,
- t1.resource_associated_entity_id,
- t1.request_mode,
- t1.request_session_id,
- t2.blocking_session_id
- FROM sys.dm_tran_locks as t1
- INNER JOIN sys.dm_os_waiting_tasks as t2
- ON t1.lock_owner_address = t2.resource_address;
10.显示阻塞信息
11.查询SQL与进程
- SELECT spid,
- blocked,
- DB_NAME(sp.dbid) AS DBName,
- program_name,
- waitresource,
- lastwaittype,
- sp.loginame,
- sp.hostname,
- a.[Text] AS [TextData],
- SUBSTRING(A.text, sp.stmt_start / 2,
- (CASE WHEN sp.stmt_end = -1 THEN DATALENGTH(A.text) ELSE sp.stmt_end
- END - sp.stmt_start) / 2) AS [current_cmd]
- FROM sys.sysprocesses AS sp OUTER APPLY sys.dm_exec_sql_text (sp.sql_handle) AS A
- WHERE spid > 50
- ORDER BY blocked DESC, DB_NAME(sp.dbid) ASC, a.[text];
查询SQL与进程
12.清理缓存与查询执行计划
- dbcc freeproccache
- select * from sys.dm_exec_query_stats
- select * from sys.dm_exec_cached_plans
3.清理缓存与查询执行计划
DBCC用来清空执行计划缓存,后面两个查询语句主要用来确定执行计划缓存是不是清空
SQL Server DBA日常查询视图_数据库性能视图的更多相关文章
- SQL Server DBA日常查询视图_数据库对象视图
1.数据库 use master; exec sp_helpdb 1.1查询数据库大小 1.2查询数据库状态 use msdb select name, user_access_desc, --用户访 ...
- SQL Server DBA日常运维语句
1.检查数据库完整性 dbcc checkdb(Portal) 检查数据库完整性checkdb Portal的 DBCC 结果. Service Broker 消息 9675,状态 1: 已分析的消息 ...
- 【SQL Server DBA】日常巡检语句3:特定监控(阻塞、top语句、索引、作业)
原文:[SQL Server DBA]日常巡检语句3:特定监控(阻塞.top语句.索引.作业) 1.查询阻塞信息.锁定了哪些资源 --1.查看阻塞信息 select spid,loginame,wai ...
- 一名小小的SQL Server DBA想谈一下SQL Server的能力
一名小小的SQL Server DBA想谈一下SQL Server的能力 百度上暂时还没有搜索到相关的个人写的比较有价值的文章,至少在中文网络的世界里面没有 但是在微软的网站有这样一篇文章:<比 ...
- 第三篇——第二部分——第五文 配置SQL Server镜像——域环境SQL Server镜像日常维护
本文接上面两篇搭建镜像的文章: 第三篇--第二部分--第三文 配置SQL Server镜像--域环境:http://blog.csdn.net/dba_huangzj/article/details/ ...
- SQL Server 2012:SQL Server体系结构——一个查询的生命周期(第3部分)(完结)
一个简单的更新查询 现在应该知道只读取数据的查询生命周期,下一步来认定当你需要更新数据时会发生什么.这个部分通过看一个简单的UPDATE查询,修改刚才例子里读取的数据,来回答. 庆幸的是,直到存取方法 ...
- 【转】SQL Server T-SQL高级查询
SQL Server T-SQL高级查询 高级查询在数据库中用得是最频繁的,也是应用最广泛的. Ø 基本常用查询 --select select * from student; //查询student ...
- 2年SQL Server DBA调优方面总结
原文:2年SQL Server DBA调优方面总结 2年SQL Server DBA调优方面总结 当2年dba 我觉得,有些东西需要和大家分享探讨,先书单. 书单 1.<深入解析SQL Serv ...
- Sql Server 存储过程中查询数据无法使用 Union(All)
原文:Sql Server 存储过程中查询数据无法使用 Union(All) 微软Sql Server数据库中,书写存储过程时,关于查询数据,无法使用Union(All)关联多个查询. 1.先看一段正 ...
随机推荐
- 【ros】rplidar Hector Slam
想用rplidar跑一下hector slam,在网上发现了几个教程写的都不错,但是亲测发现都有点不足,综合了一下,进行补充. 1. 安装ros 和 创建工作空间 http://blog.csdn.n ...
- ruby bundle config 镜像映射配置
新增映射 : bundle config mirror.https://rubygems.org/ http://ruby.taobao.com #所有对source https://rubygems ...
- 详解应对平台高并发的分布式调度框架TBSchedule
转载: 详解应对平台高并发的分布式调度框架TBSchedule
- JDE 增加合计列
- 完美实现跨域Iframe高度自适应【Iframe跨域高度自适应解决方案】
Iframe的强大功能偶就不多说了,它不但被开发人员经常运用,而且黑客们也常常使用它,总之用过的人知道它的强大之处,但是Iframe有个致命的“BUG”就是iframe的高度无法自动适应,这一点让很多 ...
- [转]Jenkins Xcode打包ipa
本地打包. 如果Mac 上没有安装brew.先安装:ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/ins ...
- WCF初探-4:WCF消息交换模式之请求与答复模式
请求与答复模式( Request/Reply) 这种交换模式是使用最多的一中,它有如下特征: 调用服务方法后需要等待服务的消息返回,即便该方法返回 void 类型 相比Duplex来讲,这种模式强调的 ...
- RHCE 系列(一):如何设置和测试静态网络路由
RHCE(Red Hat Certified Engineer,红帽认证工程师)是红帽公司的一个认证,红帽向企业社区贡献开源操作系统和软件,同时它还给公司提供训练.支持和咨询服务. 这个 RHCE 是 ...
- 关于this,super的来源猜想
this:this可以在成员函数中引用,调用成员函数函数,一般都是 obj.fun(): 这个成员函数的执行者就是当前类的对象, 所以,this应该是由此传递的. super:相对于this, 却不应 ...
- DDOS的攻击原理和防护指南(转)
DDOS的攻击原理和防护指南 作者:冰盾防火墙 网站:www.bingdun.com 日期:2008-01-07 我们现在来分析DDOS的攻击原理. 首先,DDOS是英文Distribut ...