转储控制文件头

发表于:2007-07-02来源:作者:点击数: 标签:
转出控制文件必须在数据库打开(OPEN)或者安装(MOUNT)的状态下进行。 1. 连接数据库 E:\ sql plus "/ as sysdba" SQL*Plus: Release 9.2.0.1.0 - Production on 星期五 5月 14 08:52:03 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights r

 

 
 
 

转出控制文件必须在数据库打开(OPEN)或者安装(MOUNT)的状态下进行。

 

1.      连接数据库

E:\>sqlplus "/ as sysdba"

 

SQL*Plus: Release 9.2.0.1.0 - Production on 星期五 5月 14 08:52:03 2004

 

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

 

连接到:

Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

With the Partitioning, OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

 

2.      确定跟踪文件的目录:

sys@TEST_LUNAR> show parameter dump

 

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

background_core_dump                 string      partial

background_dump_dest                 string      e:\oracle\admin\test\bdump

core_dump_dest                       string      e:\oracle\admin\test\cdump

max_dump_file_size                   string      UNLIMITED

shadow_core_dump                     string      partial

user_dump_dest                       string      e:\oracle\admin\test\udump

sys@TEST_LUNAR>

 

sys@TEST_LUNAR> host dir E:\oracle\admin\test\udump

 驱动器 E 中的卷是 ORACLE

 卷的序列号是 707A-C50C

 

 E:\oracle\admin\test\udump 的目录

 

2002-01-13  21:59       <DIR>          .

2002-01-13  21:59       <DIR>          ..

               0 个文件              0 字节

               2 个目录  2,444,267,520 可用字节

 

3.      转储控制文件头

sys@TEST_LUNAR> alter session set events @#immediate trace name controlf level 1@#;

 

会话已更改。

 

sys@TEST_LUNAR> host dir E:\oracle\admin\test\udump

 驱动器 E 中的卷是 ORACLE

 卷的序列号是 707A-C50C

 

 E:\oracle\admin\test\udump 的目录

 

2002-01-13  21:59       <DIR>          .

2002-01-13  21:59       <DIR>          ..

2004-05-14  09:06                  949 test_ora_1364.trc

               1 个文件            949 字节

               2 个目录  2,444,263,424 可用字节

 

sys@TEST_LUNAR>

 

 

4.      解读dump出来的控制文件头(level 1)信息

以下是test_ora_1364.trc的内容(共23行):

(1)     Dump file e:\oracle\admin\test\udump\test_ora_1364.trc

 

(2)       Fri May 14 09:06:10 2004

创建跟踪文件的时戳

 

(3)       ORACLE V9.2.0.1.0 - Production vsnsta=0

数据库当前的版本是V9.2.0.1.0

注意:与(18)条目的区别

 

(4)       vsnsql=12 vsnxtr=3 ???

(5)       Windows 2000 Version 5.0 Service Pack 4, CPU type 586

当前OS信息

 

(6)       Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production

(7)       With the Partitioning, OLAP and Oracle Data Mining options

(8)       JServer Release 9.2.0.1.0 - Production

(9)       Windows 2000 Version 5.0 Service Pack 4, CPU type 586

 

 

(10)   Instance name: test

实例名称为test

 

(11)   Redo thread mounted by this instance: 1

这说明这是一个单实例数据库,当前线程被实例1装载

 

(12)   Oracle process number: 13

目前Oracle的进程数为13,这个信息同select count(*) from v$process的结果相同:

sys@TEST_LUNAR> select count(*) from v$process;

 

  COUNT(*)

----------

        13

 

sys@TEST_LUNAR>

 

 

 

(13)   Windows thread id: 1364, image: ORACLE.EXE

这条信息反应了前台进程中可执行部分的信息,注意在windows平台上Oracle作为一个ORACLE.EXE进程来运行。所以,这里前台进程中的可执行部分是:ORACLE.EXE;创建该跟踪文件的线程号为1364(十进制数)。

如果在UNIX中,这部分信息会类似下面的信息:

Image: $1$DUA41:[V8ROOT.RDBMS]SQLPLUS.EXE;8

        即该跟踪文件是由前台进程SQLPLUS.EXE创建的,其操作系统进程号(PID)为8

 

(14)   *** 2004-05-14 09:06:10.000

创建跟踪文件的时戳

 

(15)   *** SESSION ID:(10.9) 2004-05-14 09:06:10.000

创建控制文件的session的SID 和SERIAL#,本例中,SID是10,SERIAL#是9,这部分信息可以同v$session视图中看到的一样。

sys@TEST_LUNAR> select sid,serial# ,username from v$session;

 

       SID    SERIAL# USERNAME

---------- ---------- ------------------------------

         1          1

         2          1

         3          1

         4          1

         5          1

         6          1

         7          1

         8          1

         9          1

        10          9 SYS

 

已选择10行。

 

sys@TEST_LUNAR> 

 

 

 

(16)   DUMP OF CONTROL FILES, Seq # 2929 = 0xb71

说明这是一个控制文件的转储,Seq #是控制文件的序列号,它意味着控制文件的更新次数,也可以看作是控制文件的版本。2929是10进制表示的,0xb71是十六进制表示的。(这行信息同21行给出的信息是一样的含义)

 

*********以下内容是通用文件头(generic file header)信息*************

通用文件头信息对于数据库中所有的数据文件,控制文件和日志文件都应当是一样的。

(17) FILE HEADER:

(18)   Software vsn=153092096=0x9200000, Compatibility Vsn=134217728=0x8000000

指出了创建控制文件时的Oracle的版本,这里是0x9200000,即,9.2.0。

Compatibility Vsn指出了兼容版本为0x8000000,即,8.0。

注意:与(3)条目的区别

 

(19)   Db ID=1750352942=0x6854442e, Db Name=@#TEST1@#

Db ID是数据库标识号,Oracle根据数据库的创建时间和数据库名按照一定的算法得出的;Db Name为数据库名,本例中数据库名为TEST1。

 

(20)   Activation ID=0=0x0

 

(21)   Control Seq=2929=0xb71, File size=228=0xe4

Control Seq同16行信息的含义;

File size指出了控制文件的物理大小,其单位为块,

即,控制文件的实际大小=File size的值 * 数据块的大小(DB_BLOCK_SIZE)

 

(22)   File Number=0, Blksiz=8192, File Type=1 CONTROL

控制文件的文件号为0,类型为1;

Blksiz对应于操作系统数据块的大小,在Windows平台上为8192K

(如果是UNIX操作系统,Blksiz的值为512)???

 

 

**************************通用文件头结束****************************

 

(23) *** END OF DUMP ***

 

 

 

原文转自:http://www.ltesting.net