Oracle教程之Oracle 跟踪事件(二)

三、内部事件号

1、10013:用于监视事务恢复

2、10015:转储UNDO SEGMENT头部

event = "10015 trace name context forever"

3、10029:用于给出会话期间的登陆信息

4、10030:用于给出会话期间的注销信息

5、10032:转储排序的统计信息

6、10033:转储排序增长的统计信息

7、10045:跟踪Freelist管理操作

8、10046:跟踪SQL语句

alter session set events '10046 trace name context forever, level 4'; --跟踪SQL语句并显示绑定变量

alter session set events '10046 trace name context forever, level 8'; --跟踪SQL语句并显示等待事件

9、10053:转储优化策略

10、10059:模拟redo日志中的创建和清除错误

11、10061:阻止SMON进程在启动时清除临时段

12、10079:转储 SQL*NET统计信息

13、10081:转储高水标记变化

14、10104:转储Hash连接统计信息

15、10128:转储分区休整信息

16、10200:转储一致性读信息

17、10201:转储一致性读中Undo应用

18、10209:允许在控制文件中模拟错误

19、10210:触发数据块检查事件

event = "10210 trace name context forever, level 10"

20、10211:触发索引检查事件

21、10213:模拟在写控制文件后崩溃

22、10214:模拟在控制文件中的写错误

levelnumber从1-9表示产生错误的块号,大于等于10则每个控制文件将出错

23、10215:模拟在控制文件中的读错误

24、10220:转储Undo头部变化

25、10221;转储Undo变化

26、10224:转储索引的分隔与删除

27、10225:转储基于字典管理的区间的变化

28、10229:模拟在数据文件上的I/O错误

29、10231:设置在全表扫描时忽略损坏的数据块

alter session set events '10231 trace name context off'; -- 关闭会话期间的数据块检查

event = "10231 trace name context forever, level 10" -- 对任何进程读入SGA的数据块进行检查

30、10232:将设置为软损坏(DBMS_REPAIR包设置或DB_BLOCK_CHECKING为TRUE时设置)的数据块dump到跟踪文件

31、10235:用于内存堆检查

alter session set events '10235 trace name context forever, level 1';

32、10241:转储远程SQL执行

33、10246:跟踪PMON进程

34、10248:跟踪dispatch进程

35、10249:跟踪MTS进程

36、10252:模拟写数据文件头部错误

37、10253:模拟写redo日志文件错误

38、10262:允许连接时存在内存泄漏

alter session set events '10262 trace name context forever, level 300'; -- 允许存在300个字节的内存泄漏

39、10270:转储共享游标

40、10285:模拟控制文件头部损坏

41、10286:模拟控制文件打开错误

42、10287:模拟归档出错

43、10357:调试直接路径机制

44、10500:跟踪SMON进程

45、10608:跟踪位图索引的创建

46、10704:跟踪enqueues

47、10706:跟踪全局enqueues

48、10708:跟踪RAC的buffer cache

49、10710:跟踪对位图索引的访问

50、10711:跟踪位图索引合并操作

51、10712:跟踪位图索引OR操作

52、10713:跟踪位图索引AND操作

53、10714:跟踪位图索引MINUS操作

54、10715:跟踪位图索引向ROWID的转化

55、10716:跟踪位图索引的压缩与解压

56、10719:跟踪位图索引的修改

57、10731:跟踪游标声明

58、10928:跟踪PL/SQL执行

59、10938:转储PL/SQL执行统计信息

最后要说明的是,由于版本不同以上语法可能有些变化,但大多数还是可用的。


四. 示例

4.1  查看当前trc 文件

select

u_dump.value || '/' ||

db_name.value || '_ora_' ||

v$process.spid ||

nvl2(v$process.traceid, '_' || v$process.traceid, null )

|| '.trc' "Trace File"

from

v$parameter u_dump

cross join v$parameter db_name

cross join v$process

join v$session

on v$process.addr = v$session.paddr

where

u_dump.name = 'user_dump_dest' and

db_name.name = 'db_name' and

v$session.audsid=sys_context('userenv','sessionid');

eg:

/fsdb1/oracle/admin/newccs/udump/newccs_ora_4862050.trc

4.2  执行event

alter session set events '10046 trace name context forever, level 1';

select count(1) from all_tables;

alter session set events '10046 trace name context off' ;

4.3 在查看newccs_ora_4862050.trc

$more newccs_ora_4862050.trc



oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html

你可能感兴趣的:(oracle,oracle,跟踪事件)