大家都知道oracle跟踪文件包括在$ORACLE_BASE/admin/<sid>中,其中包括alert,后台进程、用户进程转储文件等。以下地址中有一些简单的说明http://blog.csdn.net/hailang99/archive/2007/10/12/1821623.aspx)
参考了些资料,谈谈对oracle跟踪事件的理解:
1、set events命令格式
oracle提供进行事件跟踪及转储的命令,个人认为在用户的连接终端(也就是用户连接到oracle的session)中,执行跟踪事件命令是灵活的、方便的,常用的。使用方法如下:
SQL> alter session set events ‘immediate trace name controlf level 1′;
会话已更改。
基本命令是“alter session set events ‘…’
引号中为要指定跟踪的事件定义,有两种方法:
1)事件号方式
一种是在引号中指定一个“事件号(eventnumber)”,指触发dump的事件号,事件号可以是Oracle错误号(出现相应错误时跟踪指定的事件)或oralce内部事件号(仅当同时使用trace name context 时),内部事件号在10000到10999之间,不能与immediate关键字同用。
SQL> alter session set events ‘ 10013′;
2)事件名方式
另一种是在引号中指定“事件名称(eventname)”,需要加上“trace name”关键字。
SQL> alter session set events ‘trace name controlf ‘;
3)跟踪级别
这两种方式,都需要指定跟踪事件的级别,一般为1至10,级别超高,跟踪的信息越全。这里有个解释:
1 :only the file header
2 :just the file header, the database info record, and checkpoint progress records
3 :all record types, but just the earliest and latest records for circular reuse record types
4 :as above, but includes the 4 most recent records for circular reuse record types
5+ :as above, but the number of circular reuse records included doubles with each level
SQL> alter session set events ‘trace name controlf level 3′;
4)一直跟踪
在引号中加入“forever”关键字,放置于后端,且与level关键字之间有一个逗号。
SQL> alter session set events ‘trace name controlf forever, level 3′;
5)立即执行
在引号中加入“immediate”关键字,放置于前端。immediate和forever关键字不能同时使用。
SQL> alter session set events ‘immediate trace name controlf level 3′;
通常这个例子为常用的使用方法。
2、跟踪sql的执行
通过以下方式可以手动的开启sql的跟踪
1.select sid,serial#,username,osuser,machine from v$session; //先查询到session的sid,serial#
2.exec dbms_system.set_sql_trace_in_session(sid,sid_serial#,true); //开始跟踪
3.exec dbms_system.set_sql_trace_in_session(sid, sid_serial#,false); //停止跟踪
4.tkprof *.trc *.txt //通过tkprof可以将trc文件转换成易读的格式(实际就是一些统计信息)。
说了这些总结一下,我们可以通过alter session set event的方式获得我们想了解的事件的详细信息,当然也包括一些oracle的文件中的配置内容(如controlfile,这也是我们通常学习oracle必不可少的一项工作),我们得到了一些trace、日志文件,有些可以通过tkprof来转换成易读的格式,方便我们的分析。
分享到:
相关推荐
该事件可以将 Oracle 各类内部结构中所包含的信息转储(dump)到跟踪文件中,以便用户能根据文件内容来解决各种故障。 Oracle 跟踪文件分为三种类型: 1. 后台报警日志文件:记录数据库在启动、关闭和运行期间后台...
### Oracle诊断事件及深入解析10053事件 #### 一、Event的通常格式及分类 ##### 1、通常格式: ``` EVENT="<事件名称><动作><跟踪项目><范围限定>" ``` - **事件名称**:标识了事件的具体类型。 - **动作**:如`...
Oracle的10053事件是Oracle数据库管理系统中的一种诊断工具,它允许DBA(数据库管理员)方便地转储数据库的各类结构并追踪特定事件。Oracle提供了多种诊断工具,但事件(Event)因其便捷性和实用性而备受青睐。下面...
#### 二、Oracle跟踪事件详解 Oracle提供了一系列命令用于将数据库内部结构中包含的信息转储到跟踪文件中,以便于用户根据文件内容解决各种故障。设置跟踪事件的主要方法有两种: 1. **在`init.ora`文件中设置事件...
Oracle诊断事件是用于深入分析数据库内部行为的一组特定事件,它们允许DBA或开发人员收集关于Oracle数据库运行时的详细信息,以解决性能问题、调试错误或优化查询。以下是一些重要的Oracle诊断事件的详细说明: 1. ...
这些信息包括但不限于警报日志、跟踪文件和核心转储文件等。ADR能够帮助DBA快速定位问题并进行故障排查。 #### 2. DIAGNOSTIC_DEST 参数 `DIAGNOSTIC_DEST` 参数用于指定ADR的根目录位置。这是Oracle用来存放所有...
接下来,需要为 Oracle 实例创建一些必要的目录,以便存储日志文件、备份文件、跟踪文件等数据。具体操作如下: ```bash mkdir -p $ORACLE_BASE/admin/usdb/adump mkdir -p $ORACLE_BASE/admin/usdb/bdump mkdir -p...
Oracle日志文件包括警报日志、跟踪文件和审计日志等,它们提供了关于数据库操作的详细信息。例如,警报日志(alert log)记录了数据库运行时的关键事件,如错误消息、警告和状态变更。 ##### 2.3 检查Oracle核心...
2. **DATABASE_NAME**、**实例名**及**ORACLE_SID**: 这三个名称通常是一致的,用于标识数据库实例。在本例中,这三个名称均为`orcl`。 3. **用户密码**: SYS和SYSTEM用户的初始密码为`oracle`。 #### 三、步骤详解...
当控制文件出现问题或发生崩溃时,Oracle会返回这些错误代码,如ORA-10000用于控制文件的调试事件,而ORA-10013则表示实例恢复,这通常发生在数据库启动过程中。 - ORA-10014至ORA-10027:这部分错误主要与事务管理...
此目录下包含了所有与Oracle相关的配置、数据及应用程序的根目录,为后续的Oracle_Home和其他关键子目录提供了基础环境。 #### 二、Oracle_Home目录:核心软件与组件的集中地 Oracle_Home是Oracle_Base目录下的主...
2. Oracle IMP工具:Import工具则用于将Export创建的转储文件重新导入到数据库中。它能够恢复数据、重建对象结构,甚至重建数据库的逻辑结构。与Export类似,IMP也支持在Kshell和bat脚本中运行,通过impdp命令进行...
- Oracle提供了多种日志文件,包括警报日志(`alert_<sid>.log`)、跟踪文件(`trace files`)等。这些日志文件包含了数据库运行过程中的重要信息。 - **2.3. 检查Oracle核心转储目录** - 当Oracle遇到严重错误时,...
- **cdump**: 存放核心转储文件。 - **dpdump**: 存放RMAN备份文件。 - **pfile**: 存放参数文件。 - **udump**: 存放用户进程的跟踪文件。 #### 三、创建初始化参数文件 初始化参数文件(`initbipdb.ora`)用于定义...
2. 系统更改编号(System Change Number, SCN):SCN是Oracle用来跟踪数据库更改的一个递增计数器。每当数据库中发生事务提交时,系统会增加SCN的值。SCN在数据库恢复和一致性检查中扮演着关键角色。 3. 重做日志...
要进行块转储,可以使用Oracle的DBMS_DEBUG_JDWP包,它包含一组过程来生成跟踪文件,这些文件包含了块转储的信息。跟踪文件的位置默认设置在USER_DUMP_DEST参数所指定的目录下。通过执行SQL查询,如以下示例,可以...
为了更深入地分析PGA,DBA可以利用事件命令将PGA内存结构转储到跟踪文件中进行研究。 其次,SGA是所有Oracle实例共享的内存区域,它在数据库启动时分配,关闭时释放。SGA包括固定区域、Buffer Cache、Shared Pool、...
- **检查ORACLE核心转储目录**:当数据库遇到严重错误时,可能会生成核心转储文件,需要定期检查这些文件以识别问题。 - **检查EMAIL**:确保数据库管理员能够收到警告和异常通知,这是及时响应问题的关键。 3. *...
- `E:\app\oracle\admin\mydb\adump`:审计跟踪文件目录。 - `E:\app\oracle\admin\mydb\bdump`:后台转储文件目录。 - `E:\app\oracle\admin\mydb\cdump`:核心转储文件目录。 - `E:\app\oracle\admin\mydb\...