一:什麼是控制檔案
控制檔案是一個二進制檔案,記錄資料庫的實體結構,控制檔案包括以下内容
1 資料庫的名字
2 資料檔案和重做日志檔案兩者的名字以及位置
3 資料庫建立的時間戳
4 目前日志的序列号
5 檢查點資訊等
二:控制檔案的備份
1 備份控制檔案到一個二進制檔案
alter database backup controlfile to '/backup/control.bkp';
2 産生能夠重新建立控制檔案的語句
alter database backup controlfile to trace;
三:dropping control files
方法一步驟:
1 更改資料庫初始化參數中control_files 參數去掉不需要的控制檔案。
2 重新啟動資料庫
-----------------------------------------------
方法二的步驟:
1 先由spfile 生成pfile,再更改pfile中控制檔案部分
2 停止資料庫
3 以pfile方式啟動資料庫
4 由pfile生成spfile
5 重新啟動資料庫
eg1 以方法一drop 控制檔案control03.ctl
SQL> select open_mode from v$database;
OPEN_MODE
----------
READ WRITE
SQL> show parameter control_files;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_files string /oracle/CRM2/CRM/control01.ctl
, /oracle/CRM2/CRM/control02.c
tl, /oracle/CRM2/CRM/control03
.ctl
SQL> alter system set control_files='/oracle/CRM2/CRM/control01.ctl','/oracle/CRM2/CRM/control02.ctl' scope=spfile;
System altered.
SQL> startup force open;
ORACLE instance started.
Total System Global Area 322961408 bytes
Fixed Size 2020480 bytes
Variable Size 96471936 bytes
Database Buffers 218103808 bytes
Redo Buffers 6365184 bytes
Database mounted.
Database opened.
tl
eg2以方法二drop control03.ctl:
SQL> create pfile from spfile;
File created.
SQL> host;
[oracle@oracle ~]$ cd /oracle/app/db1/dbs/
[oracle@oracle dbs]$ ls
01nkag44_1_1 02norgeq_1_1 04norgo6_1_1 control.sql hc_zx1.dat initCRM.ora initJIUJIANZX.ora initzx.ora lkDUMMY orapwCRM spfileERP.ora
01nootjp_1_1 03nkagdo_1_1 05npb63q_1_1 hc_CRM.dat hc_zx2.dat initdw.ora init.ora initZX.ora lkERP snapcf_CRM.f spfilejiujian.ora
01norgeh_1_1 03norgo2_1_1 06npb64k_1_1 hc_ERP.dat hc_zx.dat initERP.ora initzx1.ora lkCRM log1CRM.dbf spfileCRM.ora
02nkag5r_1_1 04nkagdt_1_1 07npb802_1_1 hc_jiujian.dat hc_ZX.dat initjiujian.ora initzx2.ora lkCRMTEST log2CRM.dbf spfileCRM.ora.bak
[oracle@oracle dbs]$ vi initCRM.ora
*.control_files='/oracle/CRM2/CRM/control01.ctl','/oracle/CRM2/CRM/control02.ctl'
[oracle@oracle dbs]$ grep control_files initCRM.ora
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup pfile='/oracle/app/db1/dbs/initCRM.ora';
SQL> create spfile from pfile;
SQL> startup froce open;
SP2-0714: invalid combination of STARTUP options
SQL>
四:Creating Additional Copies, Renaming, and Relocating Control Files
步驟:1 shutdown the database
2 使用作業系統指令拷貝已存在的控制檔案到新的位置
3 更改control_files參數
4 重新啟動資料庫
eg :建立資料檔案的另一個拷貝control03.ctl
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
With the Partitioning, OLAP and Data Mining options
[oracle@oracle ~]$ cp /oracle/CRM2/CRM/control01.ctl /oracle/CRM2/CRM/control03.ctl
[oracle@oracle ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Tue Nov 6 06:44:30 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount;
SQL> alter system set control_files='/oracle/CRM2/CRM/control01.ctl','/oracle/CRM2/CRM/control02.ctl','/oracle/CRM2/CRM/control03.ctl' scope=spfile;
五 建立controlfile
本文轉自 zhangxuwl 51CTO部落格,原文連結:http://blog.51cto.com/jiujian/1052675,如需轉載請自行聯系原作者