oralce備份與恢復1 控制檔案(轉)

BSDLite發表於2007-08-16
oralce備份與恢復1 控制檔案(轉)[@more@]前提條件是某一個控制檔案破壞,但是存在其他映象檔案:
SQL> show parameter contro
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string E:ORACLEPRODUCT10.2.0ORADA
TAAFCCONTROL01.CTL, E:ORACL
EPRODUCT10.2.0ORADATAAFCC
ONTROL02.CTL, E:ORACLEPRODUC
T10.2.0ORADATAAFCCONTROL03
.CTL, E:ORACLEPRODUCT10.2.0
ORADATAAFCCONTROL04.CTL

由上看出控制檔案有4個copy,映象,
現在關閉資料庫,並將04號檔案刪除
開啟資料庫時候
SQL> startup nomount
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 62915940 bytes
Database Buffers 100663296 bytes
Redo Buffers 2945024 bytes
SQL> alter database mount
2 ;
alter database mount
*
第 1 行出現錯誤:
ORA-00205: error in identifying controlfile,check alert log for more info
SQL> show parameter contro
NAME TYPE
------------------------------------ ----------------------
VALUE
------------------------------
control_file_record_keep_time integer
7
control_files string
E:ORACLEPRODUCT10.2.0ORADA
TAAFCCONTROL01.CTL, E:ORACL
EPRODUCT10.2.0ORADATAAFCC
ONTROL02.CTL, E:ORACLEPRODUC
T10.2.0ORADATAAFCCONTROL03
.CTL, E:ORACLEPRODUCT10.2.0

SQL> alter system set control_files= -
> 'E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL01.CTL', -
> 'E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL02.CTL', -
> 'E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL03.CTL' -
> SCOPE=SPFILE;
系統已更改。
SQL> SHUTDOWN IMMEDIATE
ORA-01507:
ORACLE 例程已經關閉。

SQL> STARTUP
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 62915940 bytes
Database Buffers 100663296 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
資料庫已經開啟。

SQL> SHOW PARAMETER CONTRO
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string E:ORACLEPRODUCT10.2.0ORADA
TAAFCCONTROL01.CTL, E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL02.CTL, E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL03.CTL


SQL> SHUTDOWN IMMEDIATE
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉

SQL> HOST COPY E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL01.CTL E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL04.CTL

SQL> alter system set control_files= -
> 'E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL01.CTL', -
> 'E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL02.CTL', -
> 'E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL03.CTL', -
> 'E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL04.CTL' -
> SCOPE=SPFILE;
系統已更改。
SQL> SHUTDOWN IMMEDIATE
ORA-01109:
已經解除安裝資料庫。
ORACLE 例程已經關閉。

SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 62915940 bytes
Database Buffers 100663296 bytes
Redo Buffers 2945024 bytes
ORA-00214: ???? ''E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL01.CTL'' ?? 2543
??? ''E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL04.CTL'' ?? 2541 ???
提示控制檔案不一致

SQL> host copy E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL01.CTL E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL04.CTL
重新copy一次

SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 62915940 bytes
Database Buffers 100663296 bytes
Redo Buffers 2945024 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> show parameter control
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time integer 7
control_files string E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL01.CTL, E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL02.CTL,
E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL03.CTL, E:ORACLEPRODUCT10.2.0ORADATAAFCCONTROL04.CTL

以上為在windows平臺使用檔案系統 儲存oracle資料結構
如果使用裸裝置的話,是否要考慮使用dd命令 複製,或aix平臺下的cplv命令

F50:[/]#dd if=/dev/rraw of=/dev/rraw1 bs=1024
65536+0 records in.
65536+0 records out.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-962369/,如需轉載,請註明出處,否則將追究法律責任。

相關文章