如何跟踪某个session的SQL
1 oracle自带的sql trace程序可以跟踪本地session
sys: alter system set sql_trace = true;对所有会话跟踪
schema: alter session set sql_trace = true; 对某个session 会话跟踪sql语句
11g可以通过 select * from v$DIAG_INFO;来获取当前trace文件的位置
10g可用:当前用户:
SELECT d.value||'/'||lower(rtrim(i.instance, chr(0)))||'_ora_'||p.spid||'.trc' trace_file_name
from ( select p.spid from v$mystat m,v$session s, v$process p
where m.statistic# = 1 and s.sid = m.sid and p.addr = s.paddr) p,
( select t.instance from v$thread t,v$parameter v
where v.name = 'thread' and (v.value = 0 or t.thread# = to_number(v.value))) i,
( select value from v$parameter where name = 'user_dump_dest') d;
如果是查询其他用户session的跟踪文件,则根据用户的sid和#serial使用如下查询:
SELECT d.value||'/'||lower(rtrim(i.instance, chr(0)))||'_ora_'||p.spid||'.trc' trace_file_name
from
( select p.spid from v$session s, v$process p
where s.sid=’’ and s. SERIAL#='' and p.addr = s.paddr) p,
( select t.instance from v$thread t,v$parameter v
where v.name = 'thread' and (v.value = 0 or t.thread# = to_number(v.value))) i,
( select value from v$parameter where name = 'user_dump_dest') d
用tkprof 来格式化跟踪文件输出
tkprof 输出内容包括 1 sql 语句 2统计信息 3explain table 执行计划
2 基于DBMS_MONITOR包来跟踪会话,这种情况一般是
这个很常用
3 DBMS_system包也可以跟踪系统中其他session的sql执行语句
dbms_system.set_sql_trace_in_session(sid,serial#,true);
dbms_system.set_sql_trace(true)跟踪本地session
4 使用10046事件来实现
运用10046进程sql跟踪
全局或者session范围
level 1
level 4 : 1+bind variable
level 8 : 1+wait events
level 12 : 1 +4+8
tkprof 的时候 4,8,12的信息被忽略
全局设定,修改initial文件
event='10046 trace name context forever,level12'
alter system set events
session设定
alter session set events='10046 trace name context forever,level 8';
alter session set events='10046 trace name context off';
以上4中session跟踪方法,通过dbms_monitor,和dbms_system可以用来跟踪其他指定session的sql,其他两个方法都是本地
session或者system级别的跟踪
如何跟踪某个session的SQL的更多相关文章
- 快速找到跟踪其他session产生的trc文件
掌握该技术最根本的是需要搞清楚session跟踪文件存放的路径和生成跟踪文件的命名规则,不然,在已经存在成全上万trc文件的生产环境中,要想快速正确的找到跟踪其他SESSION产生的trc文件就如大海 ...
- herbnate session.createSQLQuery(sql) 和 session.createQuery(sql)使用
public class DistributeDao implements Serializable{ private SessionFactory sessionFactory; public Se ...
- hibernate session.createSQLQuery(sql); 通过命令删除
@Override public boolean deleteBySql(String sql) { Session session = getSession(); @SuppressWarnings ...
- 查询oracle比较慢的session和sql
注:本文来源:sxhong <查询oracle比较慢的session和sql> ---查询最慢的sql select * from ( select parsing_user_id,e ...
- gpdb删除segment上残余的session和sql
转载请注明出处:gpdb删除segment上残余的session和sql 最近公司的gpdb的变卡,导致线上系统查询队列阻塞,用户一点数据都查不出来. 每天早上我和同事都得用我们自家做的gpdb运维平 ...
- Session 与 sql 会话,mysql 权限设置,mybatis 逆向工程
Session 与 Sql 会话注意点: 通过 sqlSessionFactoty 工厂建立的与sql的会话,在进行相应的插入操作后,需要进行 commit 操作才会让数据库执行插入更新操作.如何主键 ...
- web 存储方式汇总:Cookies,Session, Web SQL; Web Storage(LocalStorage ,SessionStorage),IndexedDB,Application Cache,Cache Storage
1 1 1 web 存储方式汇总: 旧的方式: Cookies; Session; Web SQL; 新的方式 HTML5 : Web Storage(LocalStorage ,SessionSto ...
- Oracle v$session/v$sql 表
在本视图中,每一个连接到数据库实例中的 session都拥有一条记录.包括用户 session及后台进程如 DBWR, LGWR, arcchiver等等. V$SESSION中的常用列 V$SESS ...
- 微软Ignite大会我的Session(SQL Server 2014 升级面面谈)PPT分享
我在首届微软技术大会的Session分享了一个关于SQL Server升级的主题,现在将PPT分享出来. 您可以点击这里下载PPT. 也非常感谢微软中国邀请我进行这次分享.
随机推荐
- JavaScript简单的实例应用
1.显示当前时间: <!doctype> <html> <head> <meta charset='utf-8'> <script type='t ...
- leetcode 852. Peak Index in a Mountain Array
Input: [0,1,0] Output: 1 Input: [0,2,1,0] Output: 1解: 比较数组中的i和i-1的大小,如果前一位大于后一位数字,前一位则是结果 let ans = ...
- 【MySql】【Navicat】下载,安装,激活攻略
来了一家新公司,新电脑,最近申请了DB访问的权限. 公司用的MySql数据库,自己下载了MySql workbench,用的也还不错. 现在下载了一个Navicat,比较讨厌的是,现在很多软件都需要注 ...
- 《C++数据结构-快速拾遗》 基础常识
1.命名空间函数 namespace wjy { void print() { cout<<"; } int load(int num) { return num; } } us ...
- jquery IE中加载xml
$.ajax({ url: 'xml/myXML.xml', dataType: ($.browser.msie) ? "text" : "xml", time ...
- swt text 回车 defaultSelected
今天试了一下SWT控件 TEXT 中的回车事件,使用 defaultSelected 进行处理,结果怎么也不能触发事件. 经过仔细排查,发现是TEXT选中了 wrap 的原因,毕竟如果是多行的话,肯定 ...
- spring mvc 异常处理
一般实现业务的时候避免不了会抛一些自定义异常 抛给controller进行最终处理.如果业务上比较复杂.频繁的在try catch操作. 时间一长,代码维护性,可读性自然而然就上来了. 然后,spri ...
- php学习笔记1——使用phpStudy进行php运行环境搭建与测试。
1. 新手第一步还是使用phpStudy搭建一下windows下的php环境,并测试.如下: http://jingyan.baidu.com/article/3c343ff7067eff0d3679 ...
- Windows下python库的常用安装方法
目录: 1.pip安装(需要pip) 2.通过下载whl文件安装(需要pip) 3.在pythn官网下载安装包安装(不需要pip) 方法一:pip安装. 这是最 ...
- sublime text3 汉化
1.sublime text3 下载地址:http://sublimetextcn.com/ 2.安装完毕 进入sublime主页面,点击菜单栏中“preferences”,弹出选项中找到“packa ...