Oracle-控制文件
1、基本概念
控制文件是Oracle数据库中十分重要的文件,Oracle数据库启动时,首先会去读参数文件,读了参数文件,实例所需要的共享内存区和后台进程就可以启动了,这就是数据库实例启动的nomount阶段。完成这个步骤以后,就需要通过参数文件中的 control_files 参数,找到数据库的控制文件,然后打开控制文件,对控制文件进行校验。这就是Oracle数据库实例启动过程中的Mount阶段。
控制文件中包含了Oracle数据库中十分重要的信息,其中包括整个数据库的物理结构、所有数据文件、REDO LOG 文件等的信息。当然控制文件中还包含了一些其他的重要信息,比如归档模式下的日志归档情况、 rman 备份时的 catalog 信息等。
2、控制文件名、大小
set line 400 pagesize 500
col NAME for a50
select status,
name,
file_size_blks blocks,
block_size * file_size_Blks / 1024 / 1024 "Size (M)"
from v$controlfile;
STATUS NAME BLOCKS Size (M)
------- -------------------------------------------------- ---------- ----------
+DATA/orcl/controlfile/current.256.1045489053 1128 17.625
3、控制文件时间
set line 400 pagesize 500
SELECT to_char(controlfile_time, 'yyyy/mm/dd hh24:mi:ss') controlfile_time,
to_char(sysdate, 'yyyy/mm/dd hh24:mi:ss') "sysdate"
from v$database;
CONTROLFILE_TIME sysdate
------------------- -------------------
2020/07/22 10:33:58 2020/07/22 10:35:02
4、控制文件内容
我们可以看到控制文件中包含了数据库信息,CKPT 进程信息、REDO信息、数据文件和表空间信息等重要的数据库信息,也包含了日志切换的历史信息和RMAN备份的CATALOG信息。
set line 400 pagesize 500
select * from v$controlfile_record_section;
TYPE RECORD_SIZE RECORDS_TOTAL RECORDS_USED FIRST_INDEX LAST_INDEX LAST_RECID
---------------------------- ----------- ------------- ------------ ----------- ---------- ----------
DATABASE 316 1 1 0 0 0
CKPT PROGRESS 8180 11 0 0 0 0
REDO THREAD 256 8 1 0 0 0
REDO LOG 72 16 3 0 0 3
DATAFILE 520 100 4 0 0 5
FILENAME 524 2298 8 0 0 0
TABLESPACE 68 100 5 0 0 5
TEMPORARY FILENAME 56 100 1 0 0 1
RMAN CONFIGURATION 1108 50 0 0 0 0
LOG HISTORY 56 292 6 1 6 6
OFFLINE RANGE 200 163 0 0 0 0
ARCHIVED LOG 584 28 0 0 0 0
BACKUP SET 40 409 0 0 0 0
BACKUP PIECE 736 200 0 0 0 0
BACKUP DATAFILE 200 245 0 0 0 0
BACKUP REDOLOG 76 215 0 0 0 0
DATAFILE COPY 736 200 0 0 0 0
BACKUP CORRUPTION 44 371 0 0 0 0
COPY CORRUPTION 40 409 0 0 0 0
DELETED OBJECT 20 818 0 0 0 0
PROXY COPY 928 246 0 0 0 0
BACKUP SPFILE 124 131 0 0 0 0
DATABASE INCARNATION 56 292 1 1 1 1
FLASHBACK LOG 84 2048 0 0 0 0
RECOVERY DESTINATION 180 1 0 0 0 0
INSTANCE SPACE RESERVATION 28 1055 1 0 0 0
REMOVABLE RECOVERY FILES 32 1000 0 0 0 0
RMAN STATUS 116 141 0 0 0 0
THREAD INSTANCE NAME MAPPING 80 8 8 0 0 0
MTTR 100 8 1 0 0 0
DATAFILE HISTORY 568 57 0 0 0 0
STANDBY DATABASE MATRIX 400 31 31 0 0 0
GUARANTEED RESTORE POINT 212 2048 0 0 0 0
RESTORE POINT 212 2083 0 0 0 0
DATABASE BLOCK CORRUPTION 80 8384 0 0 0 0
ACM OPERATION 104 64 6 0 0 0
FOREIGN ARCHIVED LOG 604 1002 0 0 0 0
37 rows selected.