1、什麼是Oracle控制檔案?
記錄資料庫的物理結構,是oracle載入或恢複時必不可少的二進位檔案。
What Is a Control File?
2、Oracle控制檔案內的資訊
控制檔案中包含的內容
資料庫的名字、ID、建立的時間戳記
資料表空間的名字
聯機記錄檔、資料檔案的位置、個數、名字
聯機日誌的Sequence號碼
檢查點的資訊
撤銷段的開始或結束
歸檔資訊
備份資訊
3、在資料庫中查看控制檔案
1)查看控制檔案在作業系統中的路徑
有4種方式
select * FROM V$CONTROLFILE --列出執行個體中所有控制檔案的名字及狀態資訊select * FROM V$PARAMETER --列出所有參數的位置及狀態資訊select * FROM V$CONTROLFILE_RECORD_SECTION --列出控制檔案中記錄的部分資訊
SQL> SHOW PARAMETER CONTROL_FILES NAME TYPE VALUE------------------------------------ ----------- ------------------------------control_files string /usr/oradata/easDB/EASDB/control01.ctl, /usr/oradata/easDB/EASDB/control02.ctl, /usr/oradata/easDB/EASDB /control03.ctl
2)使用strings命令來查看控制檔案中的具體內容
SQL> host strings /usr/oradata/easDB/EASDB/control01.ctl | more
第二種方式:備份控制檔案到一般檔案(然後查看控制檔案中的具體內容)
SQL> host strings /usr/oradata/easDB/EASDB/control01.ctl > /usr/oradata/easDB/EASDB/ctl01.txt
4、Oracle控制檔案管理維護
1)規劃規則
建議存放到不同的磁碟或同一磁碟不同的分區
2)修改控制檔案個數
SQL> alter system set control_files = '/usr/oradata/easDB/EASDB/control01.ctl' scope = spfile;
3)控制檔案的備份
熱備:
SQL> alter database backup controlfile to '<dir>'; --熱備份控制檔案 SQL> alter database backup controlfile to trace as '<dir>' ;--得到建立控制檔案的指令碼
RMAN:
RMAN> connect target /; RMAN> backup current controlfile; RMAN> backup database include current controlfile; -- 或者設定RMAN 為自動備份 RMAN > configure controlfile autobackup on;-- 查看RMAN> show all;
4)複製控制檔案
SQL> ho cp /usr/oradata/easDB/EASDB/control01.ctl /usr/oradata/easDB/EASDB/control02.ctl
5)重建控制檔案
--重建控制檔案主要有三個需要考慮的是
--搞清各個記錄檔的大小及位置
--搞清各個資料檔案的位置
--設定正確的字元集
6)恢複控制檔案
使用BKP檔案
RMAN> restore controlfile from '/usr/oradata/easDB/EASDB/control01.BKP';
對於用指令碼建立的控制檔案,直接覆蓋就行
附錄:本文所參考的文檔如下
http://blog.csdn.net/robinson_0612/article/details/5737527
http://space.itpub.net/25989950/viewspace-712228
http://space.itpub.net/295691/viewspace-217971