select dbt.database_id,
DB_NAME(dbt.database_id) '数据库名', dbt.transaction_id,
at.name,
at.transaction_begin_time, case at.transaction_type --事务类型
when 1 then '读/写事务'
when 2 then '只读事务'
when 3 then '系统事务'
when 4 then '分布式事务'
end 'transaction类型', case at.transaction_state
when 0 then '事务尚未完全初始化'
when 1 then '事务已初始化但尚未启动'
when 2 then '事务处于活动状态'
when 3 then '事务已结束。该状态用于只读事务'
when 4 then '已对分布式事务启动提交进程'
when 5 then '事务处于准备就绪状态且等待解析'
when 6 then '事务已提交'
when 7 then '事务正在被回滚'
when 8 then '事务已回滚'
end 'transaction状态', st.session_id,
tt.text as '最近执行的语句', es.program_name from sys.dm_tran_database_transactions dbt
left join sys.dm_tran_active_transactions at
on dbt.transaction_id = at.transaction_id
left join sys.dm_tran_session_transactions st
on at.transaction_id = st.transaction_id left join sys.dm_exec_sessions es
on st.session_id = es.session_id
left join sys.dm_exec_connections ec
on es.session_id = ec.session_id
outer apply sys.dm_exec_sql_text(ec.most_recent_sql_handle) tt

进一步查询,这个会话获取了哪些资源

select db_name(resource_database_id) 'DatabaseName',
object_name(resource_associated_entity_id) 'TableName',
request_type,
request_mode,
request_status
select *
from sys.dm_tran_locks

再进一步,查询这个会话有没有阻塞其他会话,以及阻塞时间:

select session_id,              --某个会话
wait_duration_ms / 1000, --等待秒数
wait_type, --等待类型,可能是进程间的阻塞,也有可能是等待IO完成 blocking_session_id --被这个会话阻塞的,如果有的话 from sys.dm_os_waiting_tasks
where blocking_session_id = xxx

再进一步,合并上面2个:

select wt.session_id,              --某个会话
wait_duration_ms / 1000 as 'wait seconds', --等待秒数
wait_type, --等待类型,可能是进程间的阻塞,也有可能是等待IO完成 blocking_session_id, --被这个会话阻塞的,如果有的话 tl.request_mode, --请求模式,比如S、IX、X
tl.request_type, --请求类型,比如Lock
tl.request_status --是否grant from sys.dm_os_waiting_tasks wt
left join sys.dm_tran_locks tl
on wt.session_id = tl.request_session_id

查看数据库中有哪些活动的事务,对应的会话id,执行的语句的更多相关文章

  1. ORACLE 查看数据库中有哪些表

    SELECT TABLE_NAME FROM USER_TABLES ORDER BY TABLE_NAME;

  2. oracle 隔离级别、事务怎么开始的以及如何查看数据库采用字符集

    把一下语句全部粘贴至控制台运行后可以查看oracle 隔离级别 declare trans_id ); begin trans_id := dbms_transaction.local_transac ...

  3. SQLServer数据库中开启CDC导致事务日志空间被占满的原因

    SQLServer数据库中开启CDC导致事务日志空间被占满的原因 转载  2017-04-01   投稿:mrr    我要评论 这篇文章主要介绍了SQLServer数据库中开启CDC导致事务日志空间 ...

  4. Mysql基础(六):索引、数据库备份、锁和事务、慢查询优化、索引命中相关

    目录 数据库05 /索引.数据库备份.锁和事务.慢查询优化.索引命中相关 1. 什么是索引 2. 索引的原理 3. 索引的数据结构(聚集索引.辅助索引) 4. 索引操作 5. 索引的两大类型hash与 ...

  5. MySQL查看数据库相关信息

    使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令   1:查看显示所有数据库 mysql> show databases ...

  6. mysql查看数据库和表的占用空间大小

    mysql查看数据库和表的占用空间大小   第一部分-任务 将线上db,导出后,导入到office db 一. 两种方案: 1,将数据直接从online-->office,通过mysqldump ...

  7. MySQL查看数据库信息

    使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令 1:查看显示所有数据库 mysql> show databases; ...

  8. [转]MySQL查看数据库相关信息

    原文链接:MySQL查看数据库相关信息 使用MySQL时,需要了解当前数据库的情况,例如当前的数据库大小.字符集.用户等等.下面总结了一些查看数据库相关信息的命令 1:查看显示所有数据库 mysql& ...

  9. Java开发工程师(Web方向) - 03.数据库开发 - 第4章.事务

    第4章--事务 事务原理与开发 事务Transaction: 什么是事务? 事务是并发控制的基本单位,指作为单个逻辑工作单元执行的一系列操作,且逻辑工作单元需满足ACID特性. i.e. 银行转账:开 ...

随机推荐

  1. 【原创】Mvc学习笔记(1)

    1.新建MVC4项目 在MVC4中有App_Data文件夹,这个文件夹里可以放一些重要的数据,比如说数据库的mdf文件等等,这个文件夹非常安全,因为这个文件夹不允许被别人下载,不允许被浏览器访问. A ...

  2. html 5 中的 6位 十六进制颜色码 代表的意思

    人的眼睛看到的颜色有两种: ⒈ 一种是发光体发出的颜色,比如计算机显示器屏幕显示的颜色: ⒉ 另一种是物体本身不发光,而是反射的光产生 十六进制颜色码 的颜色,比如看报纸和杂志上的颜色. 我们又知道任 ...

  3. 第 9 章 模板方法模式【Template Method Pattern】

    以下内容出自:<<24种设计模式介绍与6大设计原则>> 周三,9:00,我刚刚坐到位置,打开电脑准备开始干活. “小三,小三,叫一下其它同事,到会议室,开会”老大跑过来吼,带着 ...

  4. realloc 函数的使用

    realloc 函数的使用 #include <stdio.h> #include <stdlib.h> #include <iostream> using nam ...

  5. Django下TemplateDoesNotExist 异常的解决方法:

    在settings中添加代码如下获取templates路径: import os import os.path BASE_DIR = os.path.dirname(os.path.dirname(_ ...

  6. [原博客] BZOJ 1257 [CQOI2007] 余数之和

    题目链接题意: 给定n,k,求 ∑(k mod i) {1<=i<=n} 其中 n,k<=10^9. 即 k mod 1 + k mod 2 + k mod 3 + … + k mo ...

  7. csu 10月 月赛 F 题 ZZY and his little friends

    一道字典树异或的题,但是数据比较水,被大家用暴力给干掉了! 以前写过一个类似的题,叫做the longest xor in tree: 两个差不多吧! 好久没写字典树了,复习一下! 代码: #incl ...

  8. LREM key count value

    LREM key count value Available since 1.0.0. Time complexity: O(N) where N is the length of the list. ...

  9. 转: 二十八、Java图形化界面设计——中间容器(Jpanel)

    http://blog.csdn.net/liujun13579/article/details/7762835 上一篇讲解了Jframe顶层容器,例子中生成了一个空的窗体,在实际编程过程中,一般很少 ...

  10. 【HDOJ】1175 连连看

    BFS.wa了一下午,原来是YES,写成了Yes. #include <iostream> #include <cstdio> #include <cstring> ...