Oracle 控制文件呢,是数据库中最小的文件,是一个二进制文件,其中包括了数据库的结构信息,
同时也包括了数据文件和日志文件的一些信息,控制文件虽小,但可以说是 Oracle 中最重要的文件,
只有 Oracle 进程才能够更新控制文件中的内容,
控制文件中呢主要包括数据库名称,位置,联机或者脱机状态,Redo Log File 的位置和名称,
表空间名称, Archive Log File 信息,CheckPoint 信息,Undo 信息,RMAN 信息等等,
从上面对控制文件中包含的内容也可以看出控制文件在整个 Oracle 中的重要性。
Oracle添加控制文件
一、Oracle 11g新创建的数据库缺省只有一个控制文件,如下所示:
D:\>sqlplus /nolog
SQL*Plus: Release 11.1.0.6.0 - Production on 星期三 12月 2 15:45:53 2009
Copyright (c) 1982, 2007, Oracle. All rights reserved.
SQL> conn / as sysdba
已连接。
SQL> select * from v$controlfile;
STATUS
-------
NAME
--------------------------------------------------------------------------------
IS_ BLOCK_SIZE FILE_SIZE_BLKS
--- ---------- --------------
D:\ORACLE\ORADATA\EYGLE\CONTROLFILE\O1_MF_5JQ2364D_.CTL
NO 16384 608
D:\ORACLE\FLASH_RECOVERY_AREA\EYGLE\CONTROLFILE\O1_MF_5JQ236WS_.CTL
YES 16384 608
二、增加步骤:
1、SQL> create pfile='d:\init.ora' from spfile;
文件已创建。
修改d:\init.ora文件中下面一行的内容,将路径更改为要储存的目录和文件名:
*.control_files='D:\ORACLE\CONTROL01.CTL','D:\ORACLE\CONTROL02.CTL''D:\ORACLE\CONTROL03.CTL'
2、SQL>shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
3、将原控制文件拷贝到'D:\ORACLE\CONTROL01.CTL'、'D:\ORACLE\CONTROL02.CTL'、'D:\ORACLE\CONTROL03.CTL'
4、SQL> startup pfile='d:\init.ora'
ORACLE 例程已经启动。
Total System Global Area 422670336 bytes
Fixed Size 1333620 bytes
Variable Size 297797260 bytes
Database Buffers 117440512 bytes
Redo Buffers 6098944 bytes
数据库装载完毕。
数据库已经打开。
5、SQL> create spfile from pfile='d:\init.ora';
文件已创建。
6、SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
7、SQL> startup force
ORACLE 例程已经启动。
Total System Global Area 422670336 bytes
Fixed Size 1333620 bytes
Variable Size 297797260 bytes
Database Buffers 117440512 bytes
Redo Buffers 6098944 bytes
数据库装载完毕。
数据库已经打开。
三、验证结果
SQL> select * from v$controlfile;
STATUS
-------
NAME
--------------------------------------------------------------------------------
IS_ BLOCK_SIZE FILE_SIZE_BLKS
--- ---------- --------------
D:\ORACLE\CONTROL01.CTL
NO 16384 608
D:\ORACLE\ORADATA\EYGLE\CONTROLFILE\CONTROL02.CTL
NO 16384 608
STATUS
-------
NAME
--------------------------------------------------------------------------------
IS_ BLOCK_SIZE FILE_SIZE_BLKS
--- ---------- --------------
D:\ORACLE\ORADATA\EYGLE\CONTROLFILE\CONTROL03.CTL
NO 16384 608