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

部分控制文件損壞

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

SQL> select name from v$controlfile;

SQL> shutdown immediate

將控制文件“control03.ctl”刪除

SQL> startup

ORACLE 例程已經啓動。

提示信息:

Total System Global Area  285212672 bytes

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


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章