Oracle 数据库启动过程之 mount 详解

大家好,这里是 Lucifer三思而后行,专注于提升数据库运维效率。

前言

前文讲了 Oracle 数据库启动过程之 nomount 详解,接着就说说 mount 这一步数据库到底做了什么?

mount 阶段

mount 数据库的过程是读取参数文件中的控制文件,校验控制文件是否正确,读取控制文件的内容到内存中,查询各种文件(数据文件、日志文件)的信息,一旦 mount 成功后,代表将空实例和数据库进行关联,实现数据库实例的挂载。

控制文件

数据库实例在这一阶段会被挂载,主要是打开控制文件并读取控制文件信息。

首先以 mount 方式启动数据库实例:

-- 延续上文先启动到 nomount 状态
SQL> startup nomount
ORACLE instance started.

Total System Global Area 5328027648 bytes
Fixed Size                  2262608 bytes
Variable Size            1660946864 bytes
Database Buffers         3657433088 bytes
Redo Buffers                7385088 bytes

-- 打开到 mount 状态
SQL> alter database mount;

Database altered.

-- 可以查看数据库实例的打开模式
SQL> select status from v$instance;

STATUS
------------
MOUNTED

-- 此时也可以用 v$database 查询,nomount 阶段无法查询,因为 nomount 阶段实例与数据库无关联
SQL> select open_mode from v$database;

OPEN_MODE
--------------------
MOUNTED

alert 日志内容如下:

Tue Aug 27 22:21:00 2024
alter database mount
Tue Aug 27 22:21:04 2024
## 在这一步骤中,数据库需要计算 mount id 并将其记录在控制文件中
## 通过 alter session set events 'immediate trace name CONTROLF level 8' ; 转储控制文件信息可以看到相关记录 heartbeat: 1178182719 mount id: 4034079290
Successful mount of redo thread 1, with mount id 4034058700
Database mounted in Exclusive Mode
Lost write protection disabled
Completed: alter database mount

进程数量没有发生变化:

SQL> ! ps -ef|grep -v grep|grep lucifer
oracle     32417       1  0 22:20 ?        00:00:00 ora_pmon_lucifer
oracle     32419       1  0 22:20 ?        00:00:00 ora_psp0_lucifer
oracle     32421       1  0 22:20 ?        00:00:00 ora_vktm_lucifer
oracle     32425       1  0 22:20 ?        00:00:00 ora_gen0_lucifer
oracle     32427       1  0 22:20 ?        00:00:00 ora_diag_lucifer
oracle     32429       1  0 22:20 ?        00:00:00 ora_dbrm_lucifer
oracle     32431       1  0 22:20 ?        00:00:00 ora_dia0_lucifer
oracle     32433       1  0 22:20 ?        00:00:00 ora_mman_lucifer
oracle     32435       1  0 22:20 ?        00:00:00 ora_dbw0_lucifer
oracle     32437       1  0 22:20 ?        00:00:00 ora_lgwr_lucifer
oracle     32439       1  0 22:20 ?        00:00:00 ora_ckpt_lucifer
oracle     32441       1  0 22:20 ?        00:00:00 ora_smon_lucifer
oracle     32443       1  0 22:20 ?        00:00:00 ora_reco_lucifer
oracle     32445       1  0 22:20 ?        00:00:00 ora_mmon_lucifer
oracle     32447       1  0 22:20 ?        00:00:00 ora_mmnl_lucifer
oracle     32449       1  0 22:20 ?        00:00:00 ora_d000_lucifer
oracle     32451       1  0 22:20 ?        00:00:00 ora_s000_lucifer
oracle     32452   32407  0 22:20 ?        00:00:00 oraclelucifer (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

SQL> ! ps -ef|grep -v grep|grep ora_|wc -l
17

查看控制文件参数:

-- alert 日志中可以看到在数据库实例启动到 nomount 时就已经从参数文件中读取到控制文件的路径,为了在挂载时使用
control_files            = "/oradata/lucifer/control01.ctl"
control_files            = "/u01/app/oracle/fast_recovery_area/lucifer/control02.ctl"

-- 数据库中查看控制文件参数,如果控制文件损坏或者丢失,是无法挂载数据库实例的
SQL> show parameter control_files

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
control_files                        string      /oradata/lucifer/control01.ctl
                                                 , /u01/app/oracle/fast_recover
                                                 y_area/lucifer/control02.ctl

-- 查看控制文件,在 nomount 阶段查询为空
SQL> select * from v$controlfile;

STATUS  NAME                                                         IS_ BLOCK_SIZE FILE_SIZE_BLKS
------- ------------------------------------------------------------ --- ---------- --------------
        /oradata/lucifer/control01.ctl                               NO       16384            594
        /u01/app/oracle/fast_recovery_area/lucifer/control02.ctl     NO       16384            594

-- 同时也可以查看数据文件以及日志文件信息,nomount 阶段查询会报错,因为没有读取控制文件
SQL> select name from v$datafile;

NAME
------------------------------------------------------------
/oradata/lucifer/system01.dbf
/oradata/lucifer/sysaux01.dbf
/oradata/lucifer/undotbs01.dbf
/oradata/lucifer/users01.dbf

SQL> select member from v$logfile;

MEMBER
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/oradata/lucifer/redo03.log
/oradata/lucifer/redo02.log
/oradata/lucifer/redo01.log
/oradata/lucifer/redo04.log
/oradata/lucifer/redo05.log
/oradata/lucifer/redo06.log
/oradata/lucifer/redo07.log
/oradata/lucifer/redo08.log

8 rows selected.

这里读取到的数据文件和日志文件信息只是控制文件中记录的信息,并不会检查这些文件是否存在于系统层面。

Checkpoint 分析

前文说了 ckpt(Checkpoint Process)进程会更新数据库的控制文件以指示最近的检查点,所以通过检查点进程可以看到控制文件被打开:

## 挂载数据库前查看 ckpt 进程,没有控制文件相关文件描述符
[oracle@oracle11g:/home/oracle]$ ps -ef|grep ckpt|grep -v grep
oracle     32439       1  0 22:20 ?        00:00:00 ora_ckpt_lucifer
[oracle@oracle11g:/home/oracle]$ cd /proc/32439/fd
[oracle@oracle11g:/proc/32439/fd]$ ls -ltr | grep control

## 挂载数据库后可以明确看到文件描述符指向了数据库的两个控制文件
[oracle@oracle11g:/home/oracle]$ ps -ef|grep ckpt|grep -v grep
oracle     32439       1  0 22:20 ?        00:00:00 ora_ckpt_lucifer
[oracle@oracle11g:/home/oracle]$ cd /proc/32439/fd
[oracle@oracle11g:/proc/32439/fd]$ ls -ltr | grep control
lrwx------ 1 oracle oinstall 64 Aug 27 22:25 257 -> /u01/app/oracle/fast_recovery_area/lucifer/control02.ctl
lrwx------ 1 oracle oinstall 64 Aug 27 22:25 256 -> /oradata/lucifer/control01.ctl

使用 strace 的方式查看 ckpt 进程读写控制文件:

[oracle@oracle11g:/home/oracle]$ strace -fr -o /tmp/32439.log -p 32439
strace: Process 32439 attached
^Cstrace: Process 32439 detached

## 查看 strace 日志内容
[oracle@oracle11g:/home/oracle]$ cat /tmp/32439.log
## 截取部分内容如下
32439      0.000296 getrusage(RUSAGE_SELF, {ru_utime={tv_sec=0, tv_usec=62245}, ru_stime={tv_sec=0, tv_usec=91858}, ...}) = 0
32439      0.000247 times({tms_utime=6 /* 0.06 s */, tms_stime=9 /* 0.09 s */, tms_cutime=0, tms_cstime=0}) = 431299552
32439      0.000140 times({tms_utime=6 /* 0.06 s */, tms_stime=9 /* 0.09 s */, tms_cutime=0, tms_cstime=0}) = 431299552
32439      0.000586 pwrite64(256, "\25\302\0\0\3\0\0\0\0\0\0\0\0\0\1\4NB\0\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 16384, 49152) = 16384
32439      0.001237 pwrite64(257, "\25\302\0\0\3\0\0\0\0\0\0\0\0\0\1\4NB\0\0\1\0\0\0\0\0\0\0\0\0\0\0"..., 16384, 49152) = 16384
32439      0.000814 times({tms_utime=6 /* 0.06 s */, tms_stime=9 /* 0.09 s */, tms_cutime=0, tms_cstime=0}) = 431299552
32439      0.000234 semtimedop(29, [{sem_num=16, sem_op=-1, sem_flg=0}], 1, {tv_sec=3, tv_nsec=0}) = -1 EAGAIN (Resource temporarily unavailable)
32439      3.004190 getrusage(RUSAGE_SELF, {ru_utime={tv_sec=0, tv_usec=62301}, ru_stime={tv_sec=0, tv_usec=92840}, ...}) = 0

通过上面的进程跟踪,可以得到以下内容:

  1. 进程信息可以在 /proc 下看到,例如:/proc/32439/stat
  2. Linux 系统对于文件的读写,是通过调用函数 pread64,pwrite64 函数来实现的。
  3. 检查点进程 ckpt 的触发机制是 3s 一次。
  4. 对于 pwrite64 的操作,是通过写 fd (256,257)2 个文件来完成的,其中对应的 offset 都是 49152,被写入的文件(都是控制文件)的默认块大小均为 16384。offset 位置 49152 也是比较特别的,是控制文件的第 3 个块(49152/16384)。

在检查点发生的时候,会产生 scn 值,也就是检查点 scn(checkpoint scn),该值是相当重要的,在进行文件头修复等数据库恢复时,起着至关重要的作用,在 mount 阶段可以查询:

-- v$datafile 的 checkpoint 信息是来自控制文件
SQL> select file#,STATUS,CHECKPOINT_CHANGE#,ONLINE_CHANGE# from v$datafile;

     FILE# STATUS  CHECKPOINT_CHANGE# ONLINE_CHANGE#
---------- ------- ------------------ --------------
         1 SYSTEM              998288         925702
         2 ONLINE              998288         925702
         3 ONLINE              998288         925702
         4 ONLINE              998288         925702

-- v$datafile_header 的 checkpoint 信息是来自数据库文件头
SQL> select file#,STATUS,CHECKPOINT_CHANGE#,CHECKPOINT_COUNT from v$datafile_header order by 1;

     FILE# STATUS  CHECKPOINT_CHANGE# CHECKPOINT_COUNT
---------- ------- ------------------ ----------------
         1 ONLINE              998288               97
         2 ONLINE              998288               97
         3 ONLINE              998288               18
         4 ONLINE              998288               96

-- 注意:这里是真的会去数据文件中查询,如果系统不存在这个文件,那么获取到的值都为 0,但是不会报错
SQL> select file#,STATUS,CHECKPOINT_CHANGE#,CHECKPOINT_COUNT from v$datafile_header order by 1;

     FILE# STATUS  CHECKPOINT_CHANGE# CHECKPOINT_COUNT
---------- ------- ------------------ ----------------
         1 ONLINE                   0                0
         2 ONLINE                   0                0
         3 ONLINE                   0                0
         4 ONLINE                   0                0

如果这两个值不一致,则说明数据库不是正常关闭,需要进行数据恢复。

10046 分析

当然,我们也可以使用 10046 trace 来看看有没有更多信息可以挖掘:

-- 先启动到 nomount
SQL> startup nomount
ORACLE instance started.

Total System Global Area 5328027648 bytes
Fixed Size                  2262608 bytes
Variable Size            1660946864 bytes
Database Buffers         3657433088 bytes
Redo Buffers                7385088 bytes

-- 启用 oradebug
SQL> oradebug setmypid
Statement processed.

-- 启用 10046 trace
SQL> oradebug event 10046 trace name context forever,level 12;
Statement processed.

-- 挂载数据库实例
SQL> alter database mount;

Database altered.

-- 关闭 10046 trace
SQL> oradebug event 10046 trace name context off;
Statement processed.

-- 查看 trace 文件路径
SQL> oradebug tracefile_name
/u01/app/oracle/diag/rdbms/lucifer/lucifer/trace/lucifer_ora_32881.trc

查看 10046 trace 文件内容,只截取部分重要内容:

PARSE #139684468473392:c=809,e=823,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,plh=0,tim=1724769224142128
WAIT #139684468473392: nam='rdbms ipc reply' ela= 162 from_process=10 timeout=60 p3=0 obj#=-1 tim=1724769224142846
WAIT #139684468473392: nam='reliable message' ela= 218 channel context=6801122424 channel handle=6800212608 broadcast message=6801700800 obj#=-1 tim=1724769224143722
WAIT #139684468473392: nam='rdbms ipc reply' ela= 724 from_process=12 timeout=900 p3=0 obj#=-1 tim=1724769224144583
WAIT #139684468473392: nam='Disk file operations I/O' ela= 45 FileOperation=2 fileno=0 filetype=1 obj#=-1 tim=1724769224144821
WAIT #139684468473392: nam='Disk file operations I/O' ela= 18 FileOperation=2 fileno=1 filetype=1 obj#=-1 tim=1724769224144866
WAIT #139684468473392: nam='control file sequential read' ela= 14 file#=0 block#=1 blocks=1 obj#=-1 tim=1724769224144893
WAIT #139684468473392: nam='control file sequential read' ela= 11 file#=1 block#=1 blocks=1 obj#=-1 tim=1724769224144967
WAIT #139684468473392: nam='control file sequential read' ela= 99 file#=0 block#=3 blocks=8 obj#=-1 tim=1724769224145143
WAIT #139684468473392: nam='control file sequential read' ela= 23 file#=1 block#=3 blocks=8 obj#=-1 tim=1724769224145192

*** 2024-08-27 22:33:48.172
WAIT #139684468473392: nam='control file heartbeat' ela= 4027402 p1=0 p2=0 p3=0 obj#=-1 tim=1724769228172616
WAIT #139684468473392: nam='control file sequential read' ela= 47 file#=0 block#=3 blocks=8 obj#=-1 tim=1724769228172859
WAIT #139684468473392: nam='control file sequential read' ela= 20 file#=1 block#=3 blocks=8 obj#=-1 tim=1724769228172910
WAIT #139684468473392: nam='control file sequential read' ela= 9 file#=0 block#=1 blocks=1 obj#=-1 tim=1724769228172940
WAIT #139684468473392: nam='control file parallel write' ela= 1353 files=1 block#=1 requests=1 obj#=-1 tim=1724769228174313
WAIT #139684468473392: nam='control file sequential read' ela= 24 file#=1 block#=1 blocks=1 obj#=-1 tim=1724769228174416
WAIT #139684468473392: nam='control file parallel write' ela= 682 files=1 block#=1 requests=1 obj#=-1 tim=1724769228175122
WAIT #139684468473392: nam='control file sequential read' ela= 12 file#=0 block#=16 blocks=1 obj#=-1 tim=1724769228175169
WAIT #139684468473392: nam='control file sequential read' ela= 8 file#=0 block#=18 blocks=1 obj#=-1 tim=1724769228175199
WAIT #139684468473392: nam='control file parallel write' ela= 1212 files=2 block#=17 requests=2 obj#=-1 tim=1724769228176449
WAIT #139684468473392: nam='control file parallel write' ela= 1101 files=2 block#=15 requests=2 obj#=-1 tim=1724769228177602
WAIT #139684468473392: nam='control file parallel write' ela= 1049 files=2 block#=1 requests=2 obj#=-1 tim=1724769228178675
WAIT #139684468473392: nam='control file sequential read' ela= 40 file#=0 block#=3 blocks=8 obj#=-1 tim=1724769228178761
WAIT #139684468473392: nam='control file parallel write' ela= 526 files=1 block#=3 requests=1 obj#=-1 tim=1724769228179322
WAIT #139684468473392: nam='control file parallel write' ela= 547 files=1 block#=4 requests=1 obj#=-1 tim=1724769228179891
WAIT #139684468473392: nam='control file parallel write' ela= 565 files=1 block#=5 requests=1 obj#=-1 tim=1724769228180481
WAIT #139684468473392: nam='control file parallel write' ela= 520 files=1 block#=6 requests=1 obj#=-1 tim=1724769228181021
WAIT #139684468473392: nam='control file parallel write' ela= 519 files=1 block#=7 requests=1 obj#=-1 tim=1724769228181564
WAIT #139684468473392: nam='control file parallel write' ela= 492 files=1 block#=8 requests=1 obj#=-1 tim=1724769228182083
WAIT #139684468473392: nam='control file parallel write' ela= 624 files=1 block#=9 requests=1 obj#=-1 tim=1724769228182727
WAIT #139684468473392: nam='control file parallel write' ela= 588 files=1 block#=10 requests=1 obj#=-1 tim=1724769228183342
WAIT #139684468473392: nam='control file parallel write' ela= 535 files=1 block#=11 requests=1 obj#=-1 tim=1724769228183899
WAIT #139684468473392: nam='control file parallel write' ela= 505 files=1 block#=12 requests=1 obj#=-1 tim=1724769228184428
WAIT #139684468473392: nam='control file parallel write' ela= 499 files=1 block#=13 requests=1 obj#=-1 tim=1724769228184946
WAIT #139684468473392: nam='control file sequential read' ela= 29 file#=0 block#=282 blocks=1 obj#=-1 tim=1724769228185001
WAIT #139684468473392: nam='control file parallel write' ela= 1114 files=2 block#=281 requests=2 obj#=-1 tim=1724769228186136
WAIT #139684468473392: nam='control file parallel write' ela= 1011 files=2 block#=18 requests=2 obj#=-1 tim=1724769228187172
WAIT #139684468473392: nam='control file parallel write' ela= 1005 files=2 block#=16 requests=2 obj#=-1 tim=1724769228188201
WAIT #139684468473392: nam='control file parallel write' ela= 1086 files=2 block#=1 requests=2 obj#=-1 tim=1724769228189311
WAIT #139684468473392: nam='control file sequential read' ela= 12 file#=0 block#=23 blocks=1 obj#=-1 tim=1724769228189398
WAIT #139684468473392: nam='control file sequential read' ela= 7 file#=0 block#=181 blocks=1 obj#=-1 tim=1724769228189429
WAIT #139684468473392: nam='control file sequential read' ela= 7 file#=0 block#=308 blocks=1 obj#=-1 tim=1724769228189469
WAIT #139684468473392: nam='control file sequential read' ela= 7 file#=0 block#=310 blocks=1 obj#=-1 tim=1724769228189490
WAIT #139684468473392: nam='control file sequential read' ela= 11 file#=0 block#=327 blocks=1 obj#=-1 tim=1724769228189546
WAIT #139684468473392: nam='control file parallel write' ela= 1121 files=2 block#=309 requests=2 obj#=-1 tim=1724769228190705
WAIT #139684468473392: nam='control file sequential read' ela= 8 file#=0 block#=281 blocks=1 obj#=-1 tim=1724769228190735
WAIT #139684468473392: nam='control file parallel write' ela= 1004 files=2 block#=328 requests=2 obj#=-1 tim=1724769228191755
WAIT #139684468473392: nam='control file sequential read' ela= 9 file#=0 block#=283 blocks=1 obj#=-1 tim=1724769228191786
WAIT #139684468473392: nam='control file parallel write' ela= 982 files=2 block#=17 requests=2 obj#=-1 tim=1724769228192799
WAIT #139684468473392: nam='control file parallel write' ela= 1035 files=2 block#=15 requests=2 obj#=-1 tim=1724769228193858
WAIT #139684468473392: nam='control file parallel write' ela= 1011 files=2 block#=1 requests=2 obj#=-1 tim=1724769228194894
WAIT #139684468473392: nam='control file sequential read' ela= 10 file#=0 block#=1 blocks=1 obj#=-1 tim=1724769228194955
WAIT #139684468473392: nam='control file sequential read' ela= 7 file#=1 block#=1 blocks=1 obj#=-1 tim=1724769228194984
WAIT #139684468473392: nam='control file sequential read' ela= 6 file#=0 block#=15 blocks=1 obj#=-1 tim=1724769228195011
WAIT #139684468473392: nam='control file sequential read' ela= 4 file#=0 block#=17 blocks=1 obj#=-1 tim=1724769228195027
WAIT #139684468473392: nam='control file sequential read' ela= 9 file#=0 block#=519 blocks=1 obj#=-1 tim=1724769228195055
WAIT #139684468473392: nam='control file parallel write' ela= 1041 files=2 block#=520 requests=2 obj#=-1 tim=1724769228196114
WAIT #139684468473392: nam='control file parallel write' ela= 988 files=2 block#=18 requests=2 obj#=-1 tim=1724769228197127
WAIT #139684468473392: nam='control file parallel write' ela= 1022 files=2 block#=16 requests=2 obj#=-1 tim=1724769228198173
WAIT #139684468473392: nam='control file parallel write' ela= 1026 files=2 block#=1 requests=2 obj#=-1 tim=1724769228199223
WAIT #139684468473392: nam='rdbms ipc reply' ela= 809 from_process=10 timeout=910 p3=0 obj#=-1 tim=1724769228200461
WAIT #139684468473392: nam='rdbms ipc reply' ela= 6026 from_process=11 timeout=1800 p3=0 obj#=-1 tim=1724769228206539
WAIT #139684468473392: nam='control file sequential read' ela= 10 file#=0 block#=1 blocks=1 obj#=-1 tim=1724769228206590
WAIT #139684468473392: nam='control file sequential read' ela= 5 file#=0 block#=15 blocks=1 obj#=-1 tim=1724769228206610
WAIT #139684468473392: nam='control file sequential read' ela= 5 file#=0 block#=17 blocks=1 obj#=-1 tim=1724769228206626
WAIT #139684468473392: nam='rdbms ipc reply' ela= 139 from_process=12 timeout=2147483647 p3=0 obj#=-1 tim=1724769228206807
WAIT #139684468473392: nam='control file sequential read' ela= 7 file#=0 block#=1 blocks=1 obj#=-1 tim=1724769228207034
WAIT #139684468473392: nam='control file sequential read' ela= 9 file#=1 block#=1 blocks=1 obj#=-1 tim=1724769228207063
WAIT #139684468473392: nam='control file sequential read' ela= 5 file#=0 block#=15 blocks=1 obj#=-1 tim=1724769228207081
WAIT #139684468473392: nam='control file sequential read' ela= 5 file#=0 block#=17 blocks=1 obj#=-1 tim=1724769228207097
WAIT #139684468473392: nam='control file sequential read' ela= 6 file#=0 block#=281 blocks=1 obj#=-1 tim=1724769228207120

针对上面的 10046 trace 中的:

file# 0:第一个控制文件 /oradata/lucifer/control01.ctl
file # 1:第二个控制文件 /u01/app/oracle/fast_recovery_area/lucifer/control02.ctl
block#:block 号
blocks:block 数量
files:文件数

从日志中可以看出,数据库在执行 ALTER DATABASE MOUNT 命令时,经历了多个等待状态,主要是对控制文件的读写操作。

控制文件内容

很多朋友可能没有了解过控制文件中的内容,这里附带讲一下,介绍两种比较常用的方式:

  • immediate trace name CONTROLF
  • backup controlfile to trace

immediate trace name CONTROLF

转储控制文件信息:

SQL> oradebug setmypid
Statement processed.
SQL> oradebug event immediate trace name CONTROLF level 8;
Statement processed.
SQL> oradebug event immediate trace name CONTROLF off;
Statement processed.
SQL> oradebug tracefile_name
/u01/app/oracle/diag/rdbms/lucifer/lucifer/trace/lucifer_ora_34673.trc

查看控制文件转储信息:

*** 2024-08-28 09:47:19.935
Processing Oradebug command 'event immediate trace name CONTROLF level 8'
DUMP OF CONTROL FILES, Seq # 1080 = 0x438
 V10 STYLE FILE HEADER:
        Compatibility Vsn = 186647552=0xb200400
        Db ID=4034009431=0xf0721957, Db Name='LUCIFER'
        Activation ID=0=0x0
        Control Seq=1080=0x438, File size=594=0x252
        File Number=0, Blksiz=16384, File Type=1 CONTROL
 
 
 
 
***************************************************************************
DATABASE ENTRY
***************************************************************************
 (size = 316, compat size = 316, section max = 1, section in-use = 1,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 1, numrecs = 1)
 08/27/2024 17:16:07
 DB Name "LUCIFER"
 Database flags = 0x00404001 0x00001000
 Controlfile Creation Timestamp  08/27/2024 17:16:07
 Incmplt recovery scn: 0x0000.00000000
 Resetlogs scn: 0x0000.000e2006 Resetlogs Timestamp  08/27/2024 17:16:09
 Prior resetlogs scn: 0x0000.00000001 Prior resetlogs Timestamp  08/24/2013 11:37:30
 Redo Version: compatible=0xb200400
 #Data files = 4, #Online files = 4
 Database checkpoint: Thread=1 scn: 0x0000.000f90bd
 Threads: #Enabled=1, #Open=0, Head=0, Tail=0
 enabled  threads:  01000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Max log members = 3, Max data members = 1
 Arch list: Head=4, Tail=4, Force scn: 0x0000.000e2006scn: 0x0000.00000000
 Activation ID: 4034004311
 SCN compatibility 3
 Auto-rollover enabled
 Controlfile Checkpointed at scn:  0x0000.000f906e 08/28/2024 09:35:12
 thread:0 rba:(0x0.0.0)
 enabled  threads:  00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 
 
 
 
***************************************************************************
CHECKPOINT PROGRESS RECORDS
***************************************************************************
 (size = 8180, compat size = 8180, section max = 11, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 2, numrecs = 11)
THREAD #1 - status:0x1 flags:0x0 dirty:0
low cache rba:(0xffffffff.ffffffff.ffff) on disk rba:(0x4.286d9.0)
on disk scn: 0x0000.000f9094 08/28/2024 09:36:32
resetlogs scn: 0x0000.000e2006 08/27/2024 17:16:09
heartbeat: 1178182923 mount id: 4034079290
THREAD #2 - status:0x0 flags:0x0 dirty:0
low cache rba:(0x0.0.0) on disk rba:(0x0.0.0)
on disk scn: 0x0000.00000000 01/01/1988 00:00:00
resetlogs scn: 0x0000.00000000 01/01/1988 00:00:00
heartbeat: 0 mount id: 0
THREAD #3 - status:0x0 flags:0x0 dirty:0
low cache rba:(0x0.0.0) on disk rba:(0x0.0.0)
on disk scn: 0x0000.00000000 01/01/1988 00:00:00
resetlogs scn: 0x0000.00000000 01/01/1988 00:00:00
heartbeat: 0 mount id: 0
THREAD #4 - status:0x0 flags:0x0 dirty:0
low cache rba:(0x0.0.0) on disk rba:(0x0.0.0)
on disk scn: 0x0000.00000000 01/01/1988 00:00:00
resetlogs scn: 0x0000.00000000 01/01/1988 00:00:00
heartbeat: 0 mount id: 0
THREAD #5 - status:0x0 flags:0x0 dirty:0
low cache rba:(0x0.0.0) on disk rba:(0x0.0.0)
on disk scn: 0x0000.00000000 01/01/1988 00:00:00
resetlogs scn: 0x0000.00000000 01/01/1988 00:00:00
heartbeat: 0 mount id: 0
THREAD #6 - status:0x0 flags:0x0 dirty:0
low cache rba:(0x0.0.0) on disk rba:(0x0.0.0)
on disk scn: 0x0000.00000000 01/01/1988 00:00:00
resetlogs scn: 0x0000.00000000 01/01/1988 00:00:00
heartbeat: 0 mount id: 0
THREAD #7 - status:0x0 flags:0x0 dirty:0
low cache rba:(0x0.0.0) on disk rba:(0x0.0.0)
on disk scn: 0x0000.00000000 01/01/1988 00:00:00
resetlogs scn: 0x0000.00000000 01/01/1988 00:00:00
heartbeat: 0 mount id: 0
THREAD #8 - status:0x0 flags:0x0 dirty:0
low cache rba:(0x0.0.0) on disk rba:(0x0.0.0)
on disk scn: 0x0000.00000000 01/01/1988 00:00:00
resetlogs scn: 0x0000.00000000 01/01/1988 00:00:00
heartbeat: 0 mount id: 0
 
 
 
 
***************************************************************************
EXTENDED DATABASE ENTRY
***************************************************************************
 (size = 900, compat size = 900, section max = 1, section in-use = 1,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 140, numrecs = 1)
Control AutoBackup date(dd/mm/yyyy)=27/ 8/2024
Next AutoBackup sequence= 0
Database recovery target inc#:2, Last open inc#:2
flg:0x0, flag:0x0
Change tracking state=0, file index=0, checkpoint count=0scn: 0x0000.00000000
Flashback log count=0, block count=0
Desired flashback log size=0 blocks
Oldest guarantee restore point=0
Highest thread enable/disable scn: 0x0000.00000000
Number of Open thread with finite next SCN in last log: 0
Number of half-enabled redo threads: 0
Sum of absolute file numbers for files currently being moved online: 0
 
 
 
 
***************************************************************************
REDO THREAD RECORDS
***************************************************************************
 (size = 256, compat size = 256, section max = 8, section in-use = 1,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 9, numrecs = 8)
THREAD #1 - status:0xe thread links forward:0 back:0
 #logs:8 first:1 last:8 current:4 last used seq#:0x4
 enabled at scn: 0x0000.000e2006 08/27/2024 17:16:09
 disabled at scn: 0x0000.00000000 01/01/1988 00:00:00
 opened at 08/27/2024 22:57:27 by instance lucifer
Checkpointed at scn:  0x0000.000f90bd 08/28/2024 09:36:36
 thread:1 rba:(0x4.2870d.10)
 enabled  threads:  01000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 log history: 3
 restore point keep sequence: 0
 
 
 
 
***************************************************************************
LOG FILE RECORDS
***************************************************************************
 (size = 72, compat size = 72, section max = 16, section in-use = 8,
  last-recid= 8, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 10, numrecs = 16)
LOG FILE #1: 
  name #3: /oradata/lucifer/redo01.log
 Thread 1 redo log links: forward: 2 backward: 0
 siz: 0x32000 seq: 0x00000001 hws: 0xa bsz: 512 nab: 0x2850f flg: 0x1 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.00000000
 Low scn: 0x0000.000e2006 08/27/2024 17:16:09
 Next scn: 0x0000.000e2dce 08/27/2024 17:16:37
LOG FILE #2: 
  name #2: /oradata/lucifer/redo02.log
 Thread 1 redo log links: forward: 3 backward: 1
 siz: 0x32000 seq: 0x00000002 hws: 0x8 bsz: 512 nab: 0x28cd4 flg: 0x1 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.000e2006
 Low scn: 0x0000.000e2dce 08/27/2024 17:16:37
 Next scn: 0x0000.000ea696 08/27/2024 17:17:19
LOG FILE #3: 
  name #1: /oradata/lucifer/redo03.log
 Thread 1 redo log links: forward: 4 backward: 2
 siz: 0x32000 seq: 0x00000003 hws: 0xd bsz: 512 nab: 0x4847 flg: 0x1 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.000e2dce
 Low scn: 0x0000.000ea696 08/27/2024 17:17:19
 Next scn: 0x0000.000f022b 08/27/2024 17:23:19
LOG FILE #4: 
  name #9: /oradata/lucifer/redo04.log
 Thread 1 redo log links: forward: 5 backward: 3
 siz: 0x32000 seq: 0x00000004 hws: 0xc bsz: 512 nab: 0x2870d flg: 0x8 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.000ea696
 Low scn: 0x0000.000f022b 08/27/2024 17:23:19
 Next scn: 0xffff.ffffffff 01/01/1988 00:00:00
LOG FILE #5: 
  name #10: /oradata/lucifer/redo05.log
 Thread 1 redo log links: forward: 6 backward: 4
 siz: 0x32000 seq: 0x00000000 hws: 0x5 bsz: 512 nab: 0x2 flg: 0x1 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.00000000
 Low scn: 0x0000.00000000 01/01/1988 00:00:00
 Next scn: 0x0000.00000000 01/01/1988 00:00:00
LOG FILE #6: 
  name #11: /oradata/lucifer/redo06.log
 Thread 1 redo log links: forward: 7 backward: 5
 siz: 0x32000 seq: 0x00000000 hws: 0x5 bsz: 512 nab: 0x2 flg: 0x1 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.00000000
 Low scn: 0x0000.00000000 01/01/1988 00:00:00
 Next scn: 0x0000.00000000 01/01/1988 00:00:00
LOG FILE #7: 
  name #12: /oradata/lucifer/redo07.log
 Thread 1 redo log links: forward: 8 backward: 6
 siz: 0x32000 seq: 0x00000000 hws: 0x5 bsz: 512 nab: 0x2 flg: 0x1 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.00000000
 Low scn: 0x0000.00000000 01/01/1988 00:00:00
 Next scn: 0x0000.00000000 01/01/1988 00:00:00
LOG FILE #8: 
  name #13: /oradata/lucifer/redo08.log
 Thread 1 redo log links: forward: 0 backward: 7
 siz: 0x32000 seq: 0x00000000 hws: 0x5 bsz: 512 nab: 0x2 flg: 0x1 dup: 1
 Archive links: fwrd: 0 back: 0 Prev scn: 0x0000.00000000
 Low scn: 0x0000.00000000 01/01/1988 00:00:00
 Next scn: 0x0000.00000000 01/01/1988 00:00:00
 
 
 
 
***************************************************************************
DATA FILE RECORDS
***************************************************************************
 (size = 520, compat size = 520, section max = 100, section in-use = 4,
  last-recid= 18, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 11, numrecs = 100)
DATA FILE #1: 
  name #7: /oradata/lucifer/system01.dbf
creation size=0 block size=8192 status=0xe head=7 tail=7 dup=1
 tablespace 0, index=1 krfil=1 prev_file=0
 unrecoverable scn: 0x0000.00000000 01/01/1988 00:00:00
 Checkpoint cnt:101 scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Stop scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Creation Checkpointed at scn:  0x0000.00000007 08/24/2013 11:37:33
 thread:0 rba:(0x0.0.0)
 enabled  threads:  00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Offline scn: 0x0000.000e2005 prev_range: 0
 Online Checkpointed at scn:  0x0000.000e2006 08/27/2024 17:16:09
 thread:1 rba:(0x1.2.0)
 enabled  threads:  01000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Hot Backup end marker scn: 0x0000.00000000
 aux_file is NOT DEFINED 
 Plugged readony: NO
 Plugin scnscn: 0x0000.00000000
 Plugin resetlogs scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign creation scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign checkpoint scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Online move state: 0
DATA FILE #2: 
  name #6: /oradata/lucifer/sysaux01.dbf
creation size=0 block size=8192 status=0xe head=6 tail=6 dup=1
 tablespace 1, index=2 krfil=2 prev_file=0
 unrecoverable scn: 0x0000.00000000 01/01/1988 00:00:00
 Checkpoint cnt:101 scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Stop scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Creation Checkpointed at scn:  0x0000.0000072a 08/24/2013 11:37:37
 thread:0 rba:(0x0.0.0)
 enabled  threads:  00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Offline scn: 0x0000.000e2005 prev_range: 0
 Online Checkpointed at scn:  0x0000.000e2006 08/27/2024 17:16:09
 thread:1 rba:(0x1.2.0)
 enabled  threads:  01000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Hot Backup end marker scn: 0x0000.00000000
 aux_file is NOT DEFINED 
 Plugged readony: NO
 Plugin scnscn: 0x0000.00000000
 Plugin resetlogs scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign creation scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign checkpoint scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Online move state: 0
DATA FILE #3: 
  name #5: /oradata/lucifer/undotbs01.dbf
creation size=0 block size=8192 status=0xe head=5 tail=5 dup=1
 tablespace 2, index=3 krfil=3 prev_file=0
 unrecoverable scn: 0x0000.00000000 01/01/1988 00:00:00
 Checkpoint cnt:22 scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Stop scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Creation Checkpointed at scn:  0x0000.000e16c0 08/24/2013 12:07:19
 thread:0 rba:(0x0.0.0)
 enabled  threads:  00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Offline scn: 0x0000.000e2005 prev_range: 0
 Online Checkpointed at scn:  0x0000.000e2006 08/27/2024 17:16:09
 thread:1 rba:(0x1.2.0)
 enabled  threads:  01000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Hot Backup end marker scn: 0x0000.00000000
 aux_file is NOT DEFINED 
 Plugged readony: NO
 Plugin scnscn: 0x0000.00000000
 Plugin resetlogs scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign creation scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign checkpoint scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Online move state: 0
DATA FILE #4: 
  name #4: /oradata/lucifer/users01.dbf
creation size=0 block size=8192 status=0xe head=4 tail=4 dup=1
 tablespace 4, index=4 krfil=4 prev_file=0
 unrecoverable scn: 0x0000.00000000 01/01/1988 00:00:00
 Checkpoint cnt:100 scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Stop scn: 0x0000.000f90bd 08/28/2024 09:36:36
 Creation Checkpointed at scn:  0x0000.00003f0f 08/24/2013 11:37:49
 thread:0 rba:(0x0.0.0)
 enabled  threads:  00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Offline scn: 0x0000.000e2005 prev_range: 0
 Online Checkpointed at scn:  0x0000.000e2006 08/27/2024 17:16:09
 thread:1 rba:(0x1.2.0)
 enabled  threads:  01000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
  00000000 00000000 00000000 00000000 00000000 00000000
 Hot Backup end marker scn: 0x0000.00000000
 aux_file is NOT DEFINED 
 Plugged readony: NO
 Plugin scnscn: 0x0000.00000000
 Plugin resetlogs scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign creation scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Foreign checkpoint scn/timescn: 0x0000.00000000 01/01/1988 00:00:00
 Online move state: 0
 
 
 
 
***************************************************************************
TEMP FILE RECORDS
***************************************************************************
 (size = 56, compat size = 56, section max = 100, section in-use = 1,
  last-recid= 10, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 90, numrecs = 100)
TEMP FILE #1: External File #5001 
  name #8: /oradata/lucifer/temp01.dbf
creation size=2560 block size=8192 status=0x1e head=8 tail=8 dup=1
 tablespace 3, index=5 krfil=1 prev_file=0
 unrecoverable scn: 0x0000.000e2051 08/27/2024 17:16:17
 
 
 
 
***************************************************************************
TABLESPACE RECORDS
***************************************************************************
 (size = 68, compat size = 68, section max = 100, section in-use = 5,
  last-recid= 1, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 89, numrecs = 100)
TABLESPACE #0 SYSTEM: recno=1
 First datafile link=1  Tablespace Flag=0
 Tablespace PITR mode start scn: 0x0000.00000000 01/01/1988 00:00:00
 Tablespace PITR last completion scn: 0x0000.00000000 01/01/1988 00:00:00
TABLESPACE #1 SYSAUX: recno=2
 First datafile link=2  Tablespace Flag=0
 Tablespace PITR mode start scn: 0x0000.00000000 01/01/1988 00:00:00
 Tablespace PITR last completion scn: 0x0000.00000000 01/01/1988 00:00:00
TABLESPACE #2 UNDOTBS1: recno=3
 First datafile link=3  Tablespace Flag=0
 Tablespace PITR mode start scn: 0x0000.00000000 01/01/1988 00:00:00
 Tablespace PITR last completion scn: 0x0000.00000000 01/01/1988 00:00:00
TABLESPACE #4 USERS: recno=4
 First datafile link=4  Tablespace Flag=0
 Tablespace PITR mode start scn: 0x0000.00000000 01/01/1988 00:00:00
 Tablespace PITR last completion scn: 0x0000.00000000 01/01/1988 00:00:00
TABLESPACE #3 TEMP: recno=5
 First datafile link=1  Tablespace Flag=1
 Tablespace PITR mode start scn: 0x0000.00000000 01/01/1988 00:00:00
 Tablespace PITR last completion scn: 0x0000.00000000 01/01/1988 00:00:00
 
 
 
 
***************************************************************************
RMAN CONFIGURATION RECORDS
***************************************************************************
 (size = 1108, compat size = 1108, section max = 50, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 91, numrecs = 50)
 
 
 
 
***************************************************************************
FLASHBACK LOGFILE RECORDS
***************************************************************************
 (size = 84, compat size = 84, section max = 2048, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 142, numrecs = 2048)
 
 
 
 
***************************************************************************
THREAD INSTANCE MAPPING RECORDS
***************************************************************************
 (size = 80, compat size = 80, section max = 8, section in-use = 8,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 159, numrecs = 8)
lucifer recno=1
UNNAMED_INSTANCE_2 recno=2
UNNAMED_INSTANCE_3 recno=3
UNNAMED_INSTANCE_4 recno=4
UNNAMED_INSTANCE_5 recno=5
UNNAMED_INSTANCE_6 recno=6
UNNAMED_INSTANCE_7 recno=7
UNNAMED_INSTANCE_8 recno=8
 
 
 
 
***************************************************************************
MTTR RECORDS
***************************************************************************
 (size = 100, compat size = 100, section max = 8, section in-use = 1,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 160, numrecs = 8)
MTTR record for thread 1
MTTR statistics status: 1
Init time: Avg: 8512344 us, Times measured: 4
File open time: Avg: 2690 us, Times measured: 11
Log block read time: Avg: 20 us, Times measured: 65536
Data block read/claim time: Avg: 170 us, Times measured: 1000
Data block write time: Avg: 390 us
1000 change vector apply time: Avg: 0 us, Times measured: 1
Ratio Information:
# of log blocks measured: 363085
# of data blocks measured: 19233
# of change vectors measured: 1132496
 
 
 
 
***************************************************************************
STANDBY DATABASE MAP RECORDS
***************************************************************************
 (size = 400, compat size = 400, section max = 31, section in-use = 31,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 163, numrecs = 31)
 
 
 
 
***************************************************************************
RESTORE POINT RECORDS
***************************************************************************
 (size = 212, compat size = 212, section max = 2048, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 164, numrecs = 2048)
 
 
 
 
***************************************************************************
ACM SERVICE RECORDS
***************************************************************************
 (size = 104, compat size = 104, section max = 64, section in-use = 6,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 259, numrecs = 64)
ACM record=1
  id=0
  descrip=ACM unit testing operation
  attr=1
  ver=0
  exptime=0
  cpid=0
  cinst=0
  phase=1
ACM record=2
  id=1
  descrip=LSB Database Guard
  attr=1
  ver=0
  exptime=0
  cpid=0
  cinst=0
  phase=1
ACM record=3
  id=2
  descrip=Supplemental Log Data DDL
  attr=1
  ver=0
  exptime=0
  cpid=0
  cinst=0
  phase=1
ACM record=4
  id=3
  descrip=LSB Role Change Support
  attr=1
  ver=0
  exptime=0
  cpid=0
  cinst=0
  phase=1
ACM record=5
  id=4
  descrip=RFS block and kill across RAC
  attr=1
  ver=0
  exptime=0
  cpid=0
  cinst=0
  phase=1
ACM record=6
  id=5
  descrip=RAC-wide SGA
  attr=1
  ver=0
  exptime=0
  cpid=0
  cinst=0
  phase=1
 
 
 
 
***************************************************************************
LOG FILE HISTORY RECORDS
***************************************************************************
 (size = 56, compat size = 56, section max = 292, section in-use = 3,
  last-recid= 3, old-recno = 1, last-recno = 3)
 (extent = 1, blkno = 95, numrecs = 292)
Earliest record:
 RECID #1 Recno 1 Record timestamp  08/27/24 17:16:37 Thread=1 Seq#=1 Link-Recid=0 kccic-Recid=2
  Low scn: 0x0000.000e2006 08/27/24 17:16:09 Next scn: 0x0000.000e2dce
Latest record:
 RECID #3 Recno 3 Record timestamp  08/27/24 17:23:19 Thread=1 Seq#=3 Link-Recid=2 kccic-Recid=2
  Low scn: 0x0000.000ea696 08/27/24 17:17:19 Next scn: 0x0000.000f022b
 RECID #2 Recno 2 Record timestamp  08/27/24 17:17:19 Thread=1 Seq#=2 Link-Recid=1 kccic-Recid=2
  Low scn: 0x0000.000e2dce 08/27/24 17:16:37 Next scn: 0x0000.000ea696
 RECID #1 Recno 1 Record timestamp  08/27/24 17:16:37 Thread=1 Seq#=1 Link-Recid=0 kccic-Recid=2
  Low scn: 0x0000.000e2006 08/27/24 17:16:09 Next scn: 0x0000.000e2dce
 
 
 
 
***************************************************************************
OFFLINE RANGE RECORDS
***************************************************************************
 (size = 200, compat size = 200, section max = 163, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 96, numrecs = 163)
 
 
 
 
***************************************************************************
ARCHIVED LOG RECORDS
***************************************************************************
 (size = 584, compat size = 584, section max = 28, section in-use = 1,
  last-recid= 1, old-recno = 1, last-recno = 1)
 (extent = 1, blkno = 98, numrecs = 28)
Earliest record:
 RECID #1 Recno 1 Record timestamp  08/27/24 17:23:19 Thread=1 Seq#=3
  Flags: <produced by archive operation> <created by the ARCH process>
  Resetlogs scn and time scn: 0x0000.000e2006 08/27/24 17:16:09
  filename /oradata/archivelog/1_3_1178126169.dbf
  Low scn: 0x0000.000ea696 08/27/24 17:17:19 Next scn: 0x0000.000f022b 08/27/24 17:23:19
  Block count=18502  Blocksize=512
Latest record:
 RECID #1 Recno 1 Record timestamp  08/27/24 17:23:19 Thread=1 Seq#=3
  Flags: <produced by archive operation> <created by the ARCH process>
  Resetlogs scn and time scn: 0x0000.000e2006 08/27/24 17:16:09
  filename /oradata/archivelog/1_3_1178126169.dbf
  Low scn: 0x0000.000ea696 08/27/24 17:17:19 Next scn: 0x0000.000f022b 08/27/24 17:23:19
  Block count=18502  Blocksize=512
 
 
 
 
***************************************************************************
FOREIGN ARCHIVED LOG RECORDS
***************************************************************************
 (size = 604, compat size = 604, section max = 1002, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 260, numrecs = 1002)
 
 
 
 
***************************************************************************
BACKUP SET RECORDS
***************************************************************************
 (size = 40, compat size = 40, section max = 409, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 99, numrecs = 409)
 
 
 
 
***************************************************************************
BACKUP PIECE RECORDS
***************************************************************************
 (size = 736, compat size = 736, section max = 200, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 100, numrecs = 200)
 
 
 
 
***************************************************************************
BACKUP DATAFILE RECORDS
***************************************************************************
 (size = 200, compat size = 200, section max = 245, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 109, numrecs = 245)
 
 
 
 
***************************************************************************
BACKUP LOG RECORDS
***************************************************************************
 (size = 76, compat size = 76, section max = 215, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 112, numrecs = 215)
 
 
 
 
***************************************************************************
DATAFILE COPY RECORDS
***************************************************************************
 (size = 736, compat size = 736, section max = 200, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 113, numrecs = 200)
 
 
 
 
***************************************************************************
BACKUP DATAFILE CORRUPTION RECORDS
***************************************************************************
 (size = 44, compat size = 44, section max = 371, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 122, numrecs = 371)
 
 
 
 
***************************************************************************
DATAFILE COPY CORRUPTION RECORDS
***************************************************************************
 (size = 40, compat size = 40, section max = 409, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 123, numrecs = 409)
 
 
 
 
***************************************************************************
DELETION RECORDS
***************************************************************************
 (size = 20, compat size = 20, section max = 818, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 124, numrecs = 818)
 
 
 
 
***************************************************************************
PROXY COPY RECORDS
***************************************************************************
 (size = 928, compat size = 928, section max = 246, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 125, numrecs = 246)
 
 
 
 
***************************************************************************
INCARNATION RECORDS
***************************************************************************
 (size = 56, compat size = 56, section max = 292, section in-use = 2,
  last-recid= 2, old-recno = 1, last-recno = 2)
 (extent = 1, blkno = 141, numrecs = 292)
Earliest record:
 RECID #1 Recno 1 Record timestamp 
  Resetlogs scn and time scn: 0x0000.00000001 08/24/13 11:37:30
  Previous Resetlogs scn and time scn: 0x0000.00000000 01/01/88 00:00:00
 Incarnation (parent inc#, flag)=(0, 0)
Latest record:
 RECID #2 Recno 2 Record timestamp 
  Resetlogs scn and time scn: 0x0000.000e2006 08/27/24 17:16:09
  Previous Resetlogs scn and time scn: 0x0000.00000001 08/24/13 11:37:30
 Incarnation (parent inc#, flag)=(1, 2)
 RECID #1 Recno 1 Record timestamp 
  Resetlogs scn and time scn: 0x0000.00000001 08/24/13 11:37:30
  Previous Resetlogs scn and time scn: 0x0000.00000000 01/01/88 00:00:00
 Incarnation (parent inc#, flag)=(0, 0)
 
 
 
 
***************************************************************************
RMAN STATUS RECORDS
***************************************************************************
 (size = 116, compat size = 116, section max = 141, section in-use = 3,
  last-recid= 3, old-recno = 1, last-recno = 3)
 (extent = 1, blkno = 158, numrecs = 141)
Earliest record:
 RECID #1 Recno 1 
  Internal Status: 34
  External Status: 2
    Command id: 2024-08-28T02:00:02
  Operation: RMAN
  Start and End time 08/28/24 02:00:03 08/28/24 02:00:04
Latest record:
 RECID #3 Recno 3 
  Internal Status: 34
  External Status: 2
    Command id: 2024-08-28T02:00:02
  Operation: delete
  Start and End time 08/28/24 02:00:03 08/28/24 02:00:03
 RECID #2 Recno 2 
  Internal Status: 34
  External Status: 2
    Command id: 2024-08-28T02:00:02
  Operation: delete
  Start and End time 08/28/24 02:00:03 08/28/24 02:00:03
 RECID #1 Recno 1 
  Internal Status: 34
  External Status: 2
    Command id: 2024-08-28T02:00:02
  Operation: RMAN
  Start and End time 08/28/24 02:00:03 08/28/24 02:00:04
 
 
 
 
***************************************************************************
DATAFILE HISTORY RECORDS
***************************************************************************
 (size = 568, compat size = 568, section max = 57, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 161, numrecs = 57)
 
 
 
 
***************************************************************************
NORMAL RESTORE POINT RECORDS
***************************************************************************
 (size = 212, compat size = 212, section max = 2083, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 191, numrecs = 2083)
 
 
 
 
***************************************************************************
DATABASE BLOCK CORRUPTION RECORDS
***************************************************************************
 (size = 80, compat size = 80, section max = 8384, section in-use = 0,
  last-recid= 0, old-recno = 0, last-recno = 0)
 (extent = 1, blkno = 218, numrecs = 8384)
*** END OF DUMP ***

以上记录的信息可以使用视图 v$controlfile_record_section 查看 record 记录的组成部分:

SQL> SELECT type, record_size, records_total, records_used FROM v$controlfile_record_section;

TYPE                         RECORD_SIZE RECORDS_TOTAL RECORDS_USED
---------------------------- ----------- ------------- ------------
DATABASE                             316             1            1
CKPT PROGRESS                       8180            11            0
REDO THREAD                          256             8            1
REDO LOG                              72            16            8
DATAFILE                             520           100            4
FILENAME                             524          2298           13
TABLESPACE                            68           100            5
TEMPORARY FILENAME                    56           100            1
RMAN CONFIGURATION                  1108            50            0
LOG HISTORY                           56           292            3
OFFLINE RANGE                        200           163            0
ARCHIVED LOG                         584            28            1
BACKUP SET                            40           409            0
BACKUP PIECE                         736           200            0
BACKUP DATAFILE                      200           245            0
BACKUP REDOLOG                        76           215            0
DATAFILE COPY                        736           200            0
BACKUP CORRUPTION                     44           371            0
COPY CORRUPTION                       40           409            0
DELETED OBJECT                        20           818            0
PROXY COPY                           928           246            0
BACKUP SPFILE                        124           131            0
DATABASE INCARNATION                  56           292            2
FLASHBACK LOG                         84          2048            0
RECOVERY DESTINATION                 180             1            1
INSTANCE SPACE RESERVATION            28          1055            1
REMOVABLE RECOVERY FILES              32          1000            0
RMAN STATUS                          116           141            0
THREAD INSTANCE NAME MAPPING          80             8            8
MTTR                                 100             8            1
DATAFILE HISTORY                     568            57            0
STANDBY DATABASE MATRIX              400            31           31
GUARANTEED RESTORE POINT             212          2048            0
RESTORE POINT                        212          2083            0
DATABASE BLOCK CORRUPTION             80          8384            0
ACM OPERATION                        104            64            6
FOREIGN ARCHIVED LOG                 604          1002            0

37 rows selected.

backup controlfile to trace

这种方式比较适合阅读,通常可用于重建控制文件恢复数据库,也可以看到控制文件中包含了以下内容:

  • 数据库名称
  • 归档模式
  • 日志文件信息
  • 数据文件信息
  • 临时文件信息
  • 数据库字符集

将控制文件备份到 trace 文件(前提是需要打开数据库),查看控制文件内容:

-- 前提是需要打开数据库才能使用这个命令,这里不是为了恢复,只要为了方便查看内容,所以开库后获取即可
SQL> alter database backup controlfile to trace as '/home/oracle/control.txt';

Database altered.

-- 查看控制文件内容
SQL> > ! cat /home/oracle/control.txt 
-- The following are current System-scope REDO Log Archival related
-- parameters and can be included in the database initialization file.
--
-- LOG_ARCHIVE_DEST=''
-- LOG_ARCHIVE_DUPLEX_DEST=''
--
-- LOG_ARCHIVE_FORMAT=%t_%s_%r.dbf
--
-- DB_UNIQUE_NAME="lucifer"
--
-- LOG_ARCHIVE_CONFIG='SEND, RECEIVE, NODG_CONFIG'
-- LOG_ARCHIVE_MAX_PROCESSES=4
-- STANDBY_FILE_MANAGEMENT=MANUAL
-- STANDBY_ARCHIVE_DEST=?/dbs/arch
-- FAL_CLIENT=''
-- FAL_SERVER=''
--
-- LOG_ARCHIVE_DEST_1='LOCATION=/oradata/archivelog'
-- LOG_ARCHIVE_DEST_1='OPTIONAL REOPEN=300 NODELAY'
-- LOG_ARCHIVE_DEST_1='ARCH NOAFFIRM NOEXPEDITE NOVERIFY SYNC'
-- LOG_ARCHIVE_DEST_1='REGISTER NOALTERNATE NODEPENDENCY'
-- LOG_ARCHIVE_DEST_1='NOMAX_FAILURE NOQUOTA_SIZE NOQUOTA_USED NODB_UNIQUE_NAME'
-- LOG_ARCHIVE_DEST_1='VALID_FOR=(PRIMARY_ROLE,ONLINE_LOGFILES)'
-- LOG_ARCHIVE_DEST_STATE_1=ENABLE

--
-- Below are two sets of SQL statements, each of which creates a new
-- control file and uses it to open the database. The first set opens
-- the database with the NORESETLOGS option and should be used only if
-- the current versions of all online logs are available. The second
-- set opens the database with the RESETLOGS option and should be used
-- if online logs are unavailable.
-- The appropriate set of statements can be copied from the trace into
-- a script file, edited as necessary, and executed when there is a
-- need to re-create the control file.
--
--     Set #1. NORESETLOGS case
--
-- The following commands will create a new control file and use it
-- to open the database.
-- Data used by Recovery Manager will be lost.
-- Additional logs may be required for media recovery of offline
-- Use this only if the current versions of all online logs are
-- available.

-- After mounting the created controlfile, the following SQL
-- statement will place the database in the appropriate
-- protection mode:
--  ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE

STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "LUCIFER" NORESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 '/oradata/lucifer/redo01.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 2 '/oradata/lucifer/redo02.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 3 '/oradata/lucifer/redo03.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 4 '/oradata/lucifer/redo04.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 5 '/oradata/lucifer/redo05.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 6 '/oradata/lucifer/redo06.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 7 '/oradata/lucifer/redo07.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 8 '/oradata/lucifer/redo08.log'  SIZE 100M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
  '/oradata/lucifer/system01.dbf',
  '/oradata/lucifer/sysaux01.dbf',
  '/oradata/lucifer/undotbs01.dbf',
  '/oradata/lucifer/users01.dbf'
CHARACTER SET AL32UTF8
;

-- Commands to re-create incarnation table
-- Below log names MUST be changed to existing filenames on
-- disk. Any one log file from each branch can be used to
-- re-create incarnation records.
-- ALTER DATABASE REGISTER LOGFILE '/oradata/archivelog/1_1_824297850.dbf';
-- ALTER DATABASE REGISTER LOGFILE '/oradata/archivelog/1_1_1178126169.dbf';
-- Recovery is required if any of the datafiles are restored backups,
-- or if the last shutdown was not normal or immediate.
RECOVER DATABASE

-- All logs need archiving and a log switch is needed.
ALTER SYSTEM ARCHIVE LOG ALL;

-- Database can now be opened normally.
ALTER DATABASE OPEN;

-- Commands to add tempfiles to temporary tablespaces.
-- Online tempfiles have complete space information.
-- Other tempfiles may require adjustment.
ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata/lucifer/temp01.dbf'
     SIZE 30408704  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;
-- End of tempfile additions.
--
--     Set #2. RESETLOGS case
--
-- The following commands will create a new control file and use it
-- to open the database.
-- Data used by Recovery Manager will be lost.
-- The contents of online logs will be lost and all backups will
-- be invalidated. Use this only if online logs are damaged.

-- After mounting the created controlfile, the following SQL
-- statement will place the database in the appropriate
-- protection mode:
--  ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE

STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "LUCIFER" RESETLOGS  ARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 '/oradata/lucifer/redo01.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 2 '/oradata/lucifer/redo02.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 3 '/oradata/lucifer/redo03.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 4 '/oradata/lucifer/redo04.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 5 '/oradata/lucifer/redo05.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 6 '/oradata/lucifer/redo06.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 7 '/oradata/lucifer/redo07.log'  SIZE 100M BLOCKSIZE 512,
  GROUP 8 '/oradata/lucifer/redo08.log'  SIZE 100M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
  '/oradata/lucifer/system01.dbf',
  '/oradata/lucifer/sysaux01.dbf',
  '/oradata/lucifer/undotbs01.dbf',
  '/oradata/lucifer/users01.dbf'
CHARACTER SET AL32UTF8
;

-- Commands to re-create incarnation table
-- Below log names MUST be changed to existing filenames on
-- disk. Any one log file from each branch can be used to
-- re-create incarnation records.
-- ALTER DATABASE REGISTER LOGFILE '/oradata/archivelog/1_1_824297850.dbf';
-- ALTER DATABASE REGISTER LOGFILE '/oradata/archivelog/1_1_1178126169.dbf';
-- Recovery is required if any of the datafiles are restored backups,
-- or if the last shutdown was not normal or immediate.
RECOVER DATABASE USING BACKUP CONTROLFILE

-- Database can now be opened zeroing the online logs.
ALTER DATABASE OPEN RESETLOGS;

-- Commands to add tempfiles to temporary tablespaces.
-- Online tempfiles have complete space information.
-- Other tempfiles may require adjustment.
ALTER TABLESPACE TEMP ADD TEMPFILE '/oradata/lucifer/temp01.dbf'
     SIZE 30408704  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;
-- End of tempfile additions.
--

总结

综上所述,在这个阶段只涉及到了控制文件的读写,通常可用于以下场景:

  1. 重命名数据文件,移动数据文件位置等;
  2. 启用或关闭重做日志文件的归档及非归档模式;
  3. 实现数据库的完全恢复;

需要注意的是,相关后台进程在读取控制文件时,得知了数据文件和日志信息后,并不会去验证相关文件是否存在,这个阶段只是为了数据库打开做准备,只有在真正 open 的时候,才会去验证相关文件是否存在。


往期精彩文章推荐

Oracle 数据库启动过程之 nomount 详解
Oracle RAC 修改系统时区避坑指南(深挖篇)
Ubuntu 22.04 一键安装 Oracle 11G RAC
使用 dbops 快速部署 MySQL 数据库
Oracle RAC 启动顺序,你真的了解吗?
达梦数据库一键安装脚本(免费)一篇文章让你彻底掌握 Python 🔥
一篇文章让你彻底掌握 Python
一篇文章让你彻底掌握 Shell 🔥
Oracle 监控 EMCC 13.5 安装部署超详细教程 🔥
Oracle 一键巡检自动生成 Word 报告 🔥
Oracle一键安装脚本的 21 个疑问与解答 🔥
Oracle一键巡检脚本的 21 个疑问与解答 🔥
全网首发:Oracle 23ai 一键安装脚本 🔥
Oracle 19C 最新 RU 补丁 19.24 ,一键安装! 🔥
Oracle Linux 6 一键安装 Oracle 11GR2 RAC
Oracle Linux 7.9 一键安装 Oracle 19C
Oracle Linux 8.9 一键安装 Oracle 19C RAC
Oracle Linux 9.4(aarch64) 一键安装 Oracle 19C 🔥
openEuler 20.03 LTS SP4 一键安装 Oracle 19C 🔥
openEuler 22.03 LTS SP4 一键安装 Oracle 19C RAC
RHEL 7.9 一键安装 Oracle 19C 19.23 RAC
Redhat 8.4 一键安装 Oracle 11GR2
RedHat 9.4(aarch64) 一键安装 Oracle 19C
龙蜥 Anolis 7.9 一键安装 Oracle 19C 19.23
龙蜥 Anolis OS 8.8 一键安装 Oracle 19C
SUSE 15 SP5 一键安装 Oracle 19C
统信 UOS V20 1070(a) 一键安装 Oracle 11GR2
Ubuntu 22.04 一键安装 Oracle 19C
Ubuntu 14.04 一键安装 Oracle 19C
银河麒麟 Kylin V10 SP3 一键安装 Oracle 19C 🔥
银河麒麟 Kylin V10 SP3 一键安装 Oracle 11GR2 RAC
Oracle DataGuard GAP 修复手册 🔥
优化 Oracle:最佳实践与开发规范
DBA 必备:Linux 软件源配置全攻略 🔥
Linux 一键配置时钟同步全攻略 🔥
Starwind 配置 ISCSI 共享存储
SUSE 15 SP3 安装 Oracle 19C RAC 数据库
达梦 8 数据库安装手册 🔥
Oracle 12CR2 RAC 安装避坑宝典
Linux7 安装 Oracle 19C RAC 详细图文教程 🔥
Oracle ADG 搭建 RAC to Single 详细教程
Oracle DataGuard GAP 修复手册 🔥
Oracle 分区表之在线重定义
AutoUpgrade 快速升级 Oracle 数据库
Oracle 数据库巡检命令手册 🔥
Oracle 数据坏块的 N 种修复方式 🔥
数据库 SQL 开发入门教程
超全 Linux 基础命令总结 🔥
VMware 虚拟机安装 Linux 系统
Linux 安装 MySQL 详细教程
教你玩转 SQLPLUS,工作效率提升 200%


感谢您的阅读,这里是 Lucifer三思而后行,欢迎 点赞+关注,我会持续分享数据库知识、运维技巧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lucifer三思而后行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值