首页 > 应用开发 > IT综合 > 恢复案例:无归档,丢失全部控制文件、日志文件恢复案例
1、查看数据看归档状态:
SQL> archive log list
Database log mode No Archive Mode
Automatic archival Enabled
Archive destination d:oracleoradataxuearchive
Oldest online log sequence 103
Current log sequence 104
SQL> select * from t;
A
----------
1
2
4
3
SQL> delete from t where rownum=1;
1 row deleted.
SQL> commit;
Commit complete.
SQL> select * from t;
A
----------
2
4
3
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
2、模拟介质损坏,删除全部控制文件、日志文件:
SQL> host del d:oracleoradataxue*.ctl
SQL> host del d:oracleoradataxue*.log
3、启动数据库,报错:
SQL> startup
ORACLE instance started.
Total System Global Area 64035360 bytes
Fixed Size 453152 bytes
Variable Size 41943040 bytes
Database Buffers 20971520 bytes
Redo Buffers 667648 bytes
ORA-00205: error in identifying controlfile, check alert log for more info
4、创建控制文件:
SQL> create controlfile reuse database "XUE" resetlogs noarchivelog
2 maxlogfiles 64
3 maxlogmembers 4
4 maxdatafiles 100
5 maxinstances 1
6 maxloghistory 10
7 logfile
8 group 1 'd:oracleoradataxueredo01.log' size 5M,
9 group 2 'd:oracleoradataxueredo02.log' size 5M
10 datafile 'd:oracleoradataxuesystem01.dbf',
11 'd:oracleoradataxueundotbs01.dbf',
12 'd:oracleoradataxueusers01.dbf',
13 'd:oracleoradataxuetools01.dbf',
14 'd:oracleoradataxueindx01.dbf'
15 character set zhs16gbk;
Control file created.
这一步是关键所在,由于数据库是正常关闭的,因此我们不需要实例恢复。在重建控制文件的过程中,要注意的是要确认好数据文件的位置。至于丢失的日志文件,会随着创建控制文件脚本里面的logfile指定的位置和大小重新创建。
5、以重置方式打开数据库,验证恢复成功:
SQL> alter database open resetlogs;
Database altered.
SQL> select * from t;
A
----------
2
4
3
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/60857/viewspace-786859/ ,如需转载,请注明出处,否则将追究法律责任。