转储控制文件头
2024-07-21 02:39:47
供稿:网友
转出控制文件必须在数据库打开(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 - ProductionWith the Partitioning, OLAP and Oracle Data Mining optionsJServer Release 9.2.0.1.0 - Production
2. 确定跟踪文件的目录:sys@TEST_LUNAR> show parameter dump NAME TYPE VALUE------------------------------------ ----------- ------------------------------background_core_dump string partialbackground_dump_dest string e:/oracle/admin/test/bdumpcore_dump_dest string e:/oracle/admin/test/cdumpmax_dump_file_size string UNLIMITEDshadow_core_dump string partialuser_dump_dest string e:/oracle/admin/test/udumpsys@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=0xe4Control 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 ***