Oracle 数据库跟踪 SQL 的几种方法
来源:互联网 发布:手机开启网络就有病毒 编辑:程序博客网 时间:2024/05/18 00:06
1. 使用 AUTOTRACE 查看执行计划
set autotrace ON | ON EXPLAIN | ON STATISTICS | TRACEONLY | TRACEONLY EXPLAIN
set autotrace OFF
2. 启用 sql_trace 跟踪当前 session
- 开启会话跟踪:alter session set sql_trace=true;
- 关闭会话跟踪:alter session set sql_trace=false;
3. 启用 10046 事件跟踪当前 session
- 开启会话跟踪:alter session set events '10046 trace name context forever, level 12';
- 关闭会话跟踪:alter session set events '10046 trace name context off';
- 对跟踪文件加标识:alter session set tracefile_identifier='dragon';
SQL> host dir E:\ORACLE\PRODUCT\10.2.0\ADMIN\BYISDB\UDUMP\ 驱动器 E 中的卷是 DISK1_VOL3 卷的序列号是 609E-62D9 E:\ORACLE\PRODUCT\10.2.0\ADMIN\BYISDB\UDUMP 的目录 2012-07-19 17:58 <DIR> .2012-07-19 17:58 <DIR> ..2012-07-19 17:58 3,057 byisdb_ora_704.trc2012-07-19 17:58 169,447 byisdb_ora_704_dragon.trc 2 个文件 172,504 字节 2 个目录 22,060,634,112 可用字节
4. 启用 10046 事件跟踪全局 session
这将会对整个系统的性能产生严重的影响,所以一般不建议开启。
- 开启会话跟踪:alter system set events ‘10046 trace name context forever, level 12’;
- 关闭会话跟踪:alter system set events ‘10046 trace name context off’;
5. 使用 Oracle 系统包 DBMS_SYSTEM.SET_EV 跟踪指定 session
PROCEDURE SET_EV
参数名称 类型 输入/输出默认值?
------------------------------ ----------------------- ------ --------
SI BINARY_INTEGER IN
SE BINARY_INTEGER IN
EV BINARY_INTEGER IN
LE BINARY_INTEGER IN
NM VARCHAR2 IN
参数说明:
SI-指定SESSION的SID;
SE-指定SESSION的SE;
EV-事件ID(如:10046);
LE-表示TRACE的级别;
NM-指定SESSION的username;
SQL> select userenv('sid') sid from dual; SID---------- 143SQL> select sid, serial#, username from v$session where sid=143; SID SERIAL# USERNAME---------- ---------- ------------------------------ 143 112 UNA_HR
- 开启会话跟踪:SQL> exec dbms_system.set_ev(143, 112, 10046, 12, '');
- 关闭会话跟踪:SQL> exec dbms_system.set_ev(143, 112, 10046, 0, '');
6. 获取跟踪文件
SQL> select pr.value || '\' || i.instance_name || '_ora_' || to_char(ps.spid)
|| '.trc' "trace file name" from v$session s, v$process ps, v$parameter pr, v$instance i
where s.paddr = ps.addr and s.sid = userenv('sid') and pr.name = 'user_dump_dest';trace file name--------------------------------------------------------------------------------E:\ORACLE\PRODUCT\10.2.0\ADMIN\BYISDB\UDUMP\byisdb_ora_372.trc
7. 使用 TKPROF 工具格式化
tkprof tracefile outputfile [options]
E:\oracle\product\10.2.0\admin\byisdb\udump>tkprof byisdb_ora_704.trc 10046.txt sys=no sort=prsela, exeela, fchela
- Oracle 数据库跟踪 SQL 的几种方法
- Oracle 数据库跟踪 SQL 的几种方法
- Oracle 数据库跟踪 SQL 的几种方法
- SQL SERVER访问Oracle数据库服务器的几种方法
- Oracle数据库sql语句的跟踪
- sql跟踪日志trc导入数据库的2种方法
- 连接oracle数据库的几种方法
- SQL SERVER 2000中访问Oracle数据库服务器的几种方法
- SQL SERVER 20000访问ORACLE数据库服务器的几种方法
- 在oracle中跟踪会话执行语句的几种方法
- 在oracle中跟踪会话执行语句的几种方法
- oracle数据库性能监控的SQL的几种情况
- oracle数据库性能监控的SQL的几种情况
- 在开发中如何跟踪Oracle数据库SQL的执行
- 介绍几种大型的Oracle/SQL Server数据库免费版
- 在Oracle中执行动态SQL的几种方法
- 在Oracle中执行动态SQL的几种方法
- 在Oracle中执行动态SQL的几种方法
- 关于Android软键盘弹出,会把原来的界面挤上去的问题
- 12.远程仓库
- ScrollBar样式相关
- 13.添加远程库
- gdb基本命令总结
- Oracle 数据库跟踪 SQL 的几种方法
- javax.servlet.ServletException: Request[/usergetinfo] does not contain handler parameter named 'para
- 14.从远程库克隆
- Android话筒音频采样和使用
- 15.分支管理
- oracle 数据按主键删除慢问题处理过程
- Launcher2 给桌面快捷方式图标加默认背景
- 黑马程序员——————IO (一
- adb devices 出现???????????? no permissions解决办法