oracle模擬控制文件的損壞進行操做

部分控制文件損壞 數據庫

(一)對原有的控制文件作刪除操做,模擬部分控制文件損壞 oracle

SQL> select name from v$controlfile; ide

SQL> shutdown immediate spa

將控制文件「control03.ctl」刪除 it

SQL> startup class

ORACLE 例程已經啓動。 file

提示信息: select

Total System Global Area  285212672 bytes im

Fixed Size                  1248552 bytes 數據

Variable Size              83886808 bytes

Database Buffers          192937984 bytes

Redo Buffers                7139328 bytes

ORA-00205: ?????????, ??????, ???????

SQL>altersystem set  control_files='E:\oracle\product\10.2.0\oradata\yanshu\control01.ctl',  'E:\oracle\product\10.2.0\oradata\yanshu\control02.ctl'  scope=spfile;

SQL> shutdown

SQL> startup

SQL> select name from v$controlfile;

SQL> shutdown

SQL> startup

SQL>altersystem set  control_files='E:\oracle\product\10.2.0\oradata\yanshu\control01.ctl',  'E:\oracle\product\10.2.0\oradata\yanshu\control02.ctl', 'E:\oracle\product\10.2.0\oradata\yanshu\control03.ctl'  scope=spfile;

SQL> shutdown

將「control02.ctl」複製一份改爲「control03.ctl」,而後從新啓動數據庫。

SQL> startup

(二)新增一個控制文件,而後作刪除操做,模擬部分控制文件損壞:

1SQL>altersystem set  control_files='D:\control04.ctl','E:\oracle\product\10.2.0\oradata\yanshu\control01.ctl',  'E:\oracle\product\10.2.0\oradata\yanshu\control02.ctl','E:\oracle\product\10.2.0\oradata\yanshu\control03.ctl'  scope=spfile; (在open狀態下操做:)

提示信息:

系統已更改(能夠查看動態參數文件「E:\oracle\product\10.2.0\db_1\dbs\SPFILEDOG.ora」)。

2SQL> shutdown immediate

複製控制文件「E:\oracle\product\10.2.0\oradata\yanshu\control01.ctl」到d盤根目錄下並更名爲:control04.ctl,而後啓動數據庫。

3SQL> startup

4SQL> show parameter spfile;

5SQL> select name from v$controlfile;

6SQL> shutdown immediate

刪除文件「'D:\control04.ctl」,而後啓動數據庫,看看出現什麼現象:

7SQL> startup

8SQL> startup

提示信息:

ORACLE 例程已經啓動。

Total System Global Area  285212672 bytes

Fixed Size                  1248552 bytes

Variable Size              71303896 bytes

Database Buffers          205520896 bytes

Redo Buffers                7139328 bytes

ORA-00205: ?????????, ??????, ???????(這是錯誤提示信息)

查看跟蹤文件「D:\oracle\product\10.2.0\admin\dog\bdump\alert_dog」,看錯誤緣由。

錯誤緣由提示信息:

ALTER DATABASE   MOUNT

Thu Apr 14 08:15:17 2011

ORA-00202: control file: 'D:\CONTROL01.CTL'

ORA-27041: unable to open file

OSD-04002: 沒法打開文件

O/S-Error: (OS 2) 系統找不到指定的文件。

9.解決辦法:從新修改初始化參數文件中「control_files」的設置,把刪除的文件項目去掉,而後再關閉從新啓動就能夠了:

SQL>altersystem set  control_files='E:\oracle\product\10.2.0\oradata\yanshu\control01.ctl',  'E:\oracle\product\10.2.0\oradata\yanshu\control02.ctl','E:\oracle\product\10.2.0\oradata\yanshu\control03.ctl'  scope=spfile;

10SQL> shutdown immediate

11SQL> startup

相關文章
相關標籤/搜索