没有备份的情况下对control进行了误删除,请问如何恢复 刚在vm的linux下把oracle中的三个ctl文件删除了,之前一直没有备份过,现在无法mount数据库,请问如何才能把ctl找回,创建可以么ps:oracle中的数据是空的,新建的库 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 wildwave 升星了呀, 散分庆祝下呀... 哈哈..三. 控制文件的重建:CREATE CONTROLFILE SET/reuse DATABASE SID RESETLOGS/NOresetlogs NOARCHIVELOG/archivelongORA-00205: error in identifying control file, check alert log for more info当三个控制文件都已损坏,又没有控制文件的备份,我们只能采取重建控制文件的做法。SQL> startup nomountORACLE instance started.Total System Global Area 268435456 bytesFixed Size 1266968 bytesVariable Size 88083176 bytesDatabase Buffers 176160768 bytesRedo Buffers 2924544 bytesSQL> create controlfile reuse database woody noresetlogs archivelog 2 LOGFILE 3 GROUP 1 '/u01/app/oracle/oradata/woody/redo01.log', 4 GROUP 2 '/u01/app/oracle/oradata/woody/redo02.log', 5 GROUP 3 '/u01/app/oracle/oradata/woody/redo03.log' 6 DATAFILE 7 '/u01/app/oracle/oradata/woody/sysaux01.dbf', 8 '/u01/app/oracle/oradata/woody/system01.dbf', 9 '/u01/app/oracle/oradata/woody/UNDOTBS01.dbf'10 CHARACTER SET ZHS16GBK11 ;Control file created.成功地重建控制文件后,我们尝试着打开数据库,但系统报错,提示需要进行介质恢复。SQL> conn /as sysdba;Connected to an idle instance.SQL> startupORACLE instance started.Total System Global Area 268435456 bytesFixed Size 1266968 bytesVariable Size 88083176 bytesDatabase Buffers 176160768 bytesRedo Buffers 2924544 bytesDatabase mounted.ORA-01113: file 1 needs media recoveryORA-01110: data file 1: '/u01/app/oracle/oradata/woody/system01.dbf'SQL> recover datafile '/u01/app/oracle/oradata/woody/system01.dbf';Media recovery complete.SQL> recover datafile '/u01/app/oracle/oradata/woody/UNDOTBS01.dbf';Media recovery complete.SQL> recover datafile '/u01/app/oracle/oradata/woody/sysaux01.dbf';Media recovery complete.介质恢复后,重新打开数据库,提示日志文件也需恢复。SQL> recover database until cancel;日志已恢复。控制文件、数据文件、日志文件全部恢复后,将三种文件同步,并打开数据库,成功地完成了数据库的恢复工作。SQL> alter database open resetlogs;数据库已更改。 在做了alter database open resetlogs;会把online redelog file清空,数据文件丢失.所以这个时候要做一个全备份。resetlogs命令表示一个数据库逻辑生存期的结束和另一个数据库逻辑生存期的开始,每次使用resetlogs命令的时候,SCN不会被重置,不过oracle会重置日志序列号,而且会重置联机重做日志内容.这样做是为了防止不完全恢复后日志序列会发生冲突(因为现有日志和数据文件间有了时间差)。Oracle 控制文件http://user.qzone.qq.com/251097186/blog/1252557580 试过了,报了以下错误:create controlfile reuse database orcl noresetlogs archivelog*ERROR at line 1:ORA-01503: CREATE CONTROLFILE failedORA-01163: SIZE clause indicates 640 (blocks), but should match header 5120ORA-01110: data file 2: '/u01/app/oracle/oradata/orcl/undotbs01.dbf' 我又在这里发了一个贴,关于ORA-01245的,现在被这个问题卡住一下午了,希望高手帮忙看看。 这里的情况很复杂,不是说不可能恢复,不过是需要很多的临场的经验一步步的排查,才有可能找到问题,解决问题,所以作为新手在这方面处理还有些过早,如果是学习的话,可以先跳过这样的错误。至于这里的问题是个工作原则的问题,平时要多做备份,而且对于删除重要文件这样的操作前要先备份。作为dba就是要知道一个enter可能对我们造成的打击。 ctl全部都丢失了,怎么恢复,真有点麻烦.这是我做过的一个恢复过程,首先是利用老的控制文件alter database backup controlfile to trace;利用生成的trace 文件编辑sql脚本恢复的过程:LZ 可以参考下 1>创建pfile,制定我欲恢复的控制文件的位置[oracle@yysf dbs]$ vi initorcl.oraorcl.__db_cache_size=79691776orcl.__java_pool_size=4194304orcl.__large_pool_size=4194304orcl.__shared_pool_size=109051904orcl.__streams_pool_size=0*.audit_file_dest='/oracle/admin/orcl/adump'*.audit_trail='NONE'*.background_dump_dest='/oracle/admin/orcl/bdump'*.compatible='10.2.0.1.0'*.control_files='/home/oracle/recover.ctl'*.core_dump_dest='/oracle/admin/orcl/cdump'*.db_block_size=8192*.db_cache_size=79691776*.db_create_file_dest='/oracle/oradata'*.db_domain=''*.db_file_multiblock_read_count=16*.db_name='orcl'*.db_recovery_file_dest='/oracle/flash_recovery_area'*.db_recovery_file_dest_size=2147483648*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'*.java_pool_size=4194304*.job_queue_processes=10*.large_pool_size=4194304*.log_archive_format='%t_%s_%r.dbf'*.open_cursors=300*.pga_aggregate_target=66060288*.processes=150*.remote_login_passwordfile='exclusive'*.sga_target=201326592*.shared_pool_size=109051904*.streams_pool_size=0*.undo_management='AUTO'*.undo_tablespace='UNDOTBS1'*.user_dump_dest='/oracle/admin/orcl/udump'~2.察看trc 文件,把建立控制文件的那一部分拷贝出来:STARTUP NOMOUNTCREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS ARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 292LOGFILE GROUP 1 ( '/oracle/oradata/ORCL/onlinelog/o1_mf_1_5bbblfr4_.log', '/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_1_5bbblgwf_.log', '/home/oracle/damao.dbf' ) SIZE 50M, GROUP 2 ( '/oracle/oradata/ORCL/onlinelog/o1_mf_2_5bbbljjw_.log', '/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_2_5bbblkdc_.log' ) SIZE 50M, GROUP 3 ( '/oracle/oradata/ORCL/onlinelog/o1_mf_3_5bbbllln_.log', '/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_3_5bbblmq0_.log' ) SIZE 50M-- STANDBY LOGFILEDATAFILE '/oracle/oradata/ORCL/datafile/o1_mf_system_5bbbjkn1_.dbf', '/oracle/oradata/ORCL/datafile/o1_mf_undotbs1_5bbbjkv1_.dbf', '/oracle/oradata/ORCL/datafile/o1_mf_sysaux_5bbbjko0_.dbf', '/oracle/oradata/ORCL/datafile/o1_mf_users_5bbbjkw8_.dbf', '/oracle/oradata/ORCL/datafile/o1_mf_example_5bbbmdyq_.dbf'CHARACTER SET AL32UTF8;做成文件 recover.sql[oracle@yysf ~]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Sun Sep 13 21:47:46 2009Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsSQL> shutdown abort;ORACLE instance shut down.---用建立的pfile把数据库置于 nomount状态,---------SQL> startup nomount pfile='/oracle/product/10.2.0/db_1/dbs/initorcl.ora';ORACLE instance started.Total System Global Area 201326592 bytesFixed Size 1218508 bytesVariable Size 117442612 bytesDatabase Buffers 79691776 bytesRedo Buffers 2973696 bytes----用建立的sql脚本重建控制文件---------SQL> @/home/oracle/control.sqlORA-01081: cannot start already-running ORACLE - shut it down firstControl file created.恢复数据库,并已resetlogs 方式打开数据库。[oracle@yysf ~]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Sun Sep 13 21:50:31 2009Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to:Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsSQL> select status from v$instance;STATUS------------MOUNTEDSQL> recover database using backup controlfile;ORA-00279: change 813732 generated at 09/13/2009 21:21:13 needed for thread 1ORA-00289: suggestion :/oracle/flash_recovery_area/ORCL/archivelog/2009_09_13/o1_mf_1_26_%u_.arcORA-00280: change 813732 for thread 1 is in sequence #26Specify log: {<RET>=suggested | filename | AUTO | CANCEL}/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_2_5bbblkdc_.logLog applied.Media recovery completeSQL> alter database open resetlogs;Database altered. 多谢朋友的回复,请问alter database backup controlfile to trace;这句执行后会在onlinelog或udump中生成trace文件么,没有找到 1>编辑pfile initorcl.oraorcl.__db_cache_size=79691776 orcl.__java_pool_size=4194304 orcl.__large_pool_size=4194304 orcl.__shared_pool_size=109051904 orcl.__streams_pool_size=0 *.audit_file_dest='/oracle/admin/orcl/adump' *.audit_trail='NONE' *.background_dump_dest='/oracle/admin/orcl/bdump' *.compatible='10.2.0.1.0' *.control_files='/home/oracle/old.ctl' *.core_dump_dest='/oracle/admin/orcl/cdump' *.db_block_size=8192 *.db_cache_size=79691776 *.db_create_file_dest='/oracle/oradata' *.db_domain='' *.db_file_multiblock_read_count=16 *.db_name='orcl' *.db_recovery_file_dest='/oracle/flash_recovery_area' *.db_recovery_file_dest_size=2147483648 *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' *.java_pool_size=4194304 *.job_queue_processes=10 *.large_pool_size=4194304 *.log_archive_format='%t_%s_%r.dbf' *.open_cursors=300 *.pga_aggregate_target=66060288 *.processes=150 *.remote_login_passwordfile='exclusive' *.sga_target=201326592 *.shared_pool_size=109051904 *.streams_pool_size=0 *.undo_management='AUTO' *.undo_tablespace='UNDOTBS1' *.user_dump_dest='/oracle/admin/orcl/udump' 2>利用老的控制文件把数据库置于mount状态,SQL> startup nomount pfile='initorcl.ora';SQL> select status from v$instance; STATUS ------------ MOUNTED 3>产生数据库脚本 trace文件,SQL>alter database backup controlfile to trace;需要数据库在挂载的情况下,生成一个trc文件导出到 udump文件夹中去,这个trc大小是7K左右. 一般这样的情况,能够进行恢复的话, 需要以下条件 1. 上次冷备份一份 2. 从上次冷备份以来的所以归档文件,如果是归档文件中间有中断的,只能恢复好中断前的 3. 有完整而正确的redo文件 4. 数据库必须是正常关闭的,如果是abort关闭,必须保证是clear的数据库 5. 故障的数据库故障后,没有进行任何非正确的恢复手段。 只有是以上这样的前提,才能进行正确的恢复,否则就是靠经验来进行排查,用一些方法来诊断和恢复了。所以,你这里没有备份的话,已经是基本上断了正常恢复的所有的路了。 所以备份对于恢复的重要性,通过这里你应该很有体验了。先学习基本的备份,和恢复的一些原理性的知识,对于你现在来说是更有意义的,你可以先看看这个文章,http://bbs.inthirties.com/thread-83-1-1.htmloracle恢复流程.doc 没用过oracle,但是将来肯定会用到。收藏 所以备份对于恢复的重要性,通过这里你应该很有体验了。 先学习基本的备份,和恢复的一些原理性的知识,对于你现在来说是更有意义的, 你可以先看看这个文章, http://bbs.inthirties.com/thread-83-1-1.html oracle恢复流程.doc inthirties 你的博客,今天怎么访问不了了?? Oracle优化相关,请高手进! 4个表abcd,取出A表中有,BCD中都没有的数据【在线等】 若在ORACAL中对应的SQL语句是如何写? SQl语句查询速度的问题 为什么我的oracle数据库老是隔段时间就自动关闭? 求助,ORA-00600错误 哪种情况下用触发器的before,什么时候用after比较合适? 如何插入“&” TUXEDO 使用XA方式连接ORACLE数据库产生的问题 初学者!请问在Oracle中能不能在一个字段中存放整型数组? 求救,大数据量的查询 col后出现####
wildwave 升星了呀, 散分庆祝下呀... 哈哈..三. 控制文件的重建:CREATE CONTROLFILE SET/reuse DATABASE SID RESETLOGS/NOresetlogs NOARCHIVELOG/archivelongORA-00205: error in identifying control file, check alert log for more info当三个控制文件都已损坏,又没有控制文件的备份,我们只能采取重建控制文件的做法。SQL> startup nomount
ORACLE instance started.
Total System Global Area 268435456 bytes
Fixed Size 1266968 bytes
Variable Size 88083176 bytes
Database Buffers 176160768 bytes
Redo Buffers 2924544 bytesSQL> create controlfile reuse database woody noresetlogs archivelog
2 LOGFILE
3 GROUP 1 '/u01/app/oracle/oradata/woody/redo01.log',
4 GROUP 2 '/u01/app/oracle/oradata/woody/redo02.log',
5 GROUP 3 '/u01/app/oracle/oradata/woody/redo03.log'
6 DATAFILE
7 '/u01/app/oracle/oradata/woody/sysaux01.dbf',
8 '/u01/app/oracle/oradata/woody/system01.dbf',
9 '/u01/app/oracle/oradata/woody/UNDOTBS01.dbf'
10 CHARACTER SET ZHS16GBK
11 ;
Control file created.
成功地重建控制文件后,我们尝试着打开数据库,但系统报错,提示需要进行介质恢复。SQL> conn /as sysdba;
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 268435456 bytes
Fixed Size 1266968 bytes
Variable Size 88083176 bytes
Database Buffers 176160768 bytes
Redo Buffers 2924544 bytes
Database mounted.
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: '/u01/app/oracle/oradata/woody/system01.dbf'SQL> recover datafile '/u01/app/oracle/oradata/woody/system01.dbf';
Media recovery complete.
SQL> recover datafile '/u01/app/oracle/oradata/woody/UNDOTBS01.dbf';
Media recovery complete.
SQL> recover datafile '/u01/app/oracle/oradata/woody/sysaux01.dbf';
Media recovery complete.介质恢复后,重新打开数据库,提示日志文件也需恢复。
SQL> recover database until cancel;
日志已恢复。
控制文件、数据文件、日志文件全部恢复后,将三种文件同步,并打开数据库,成功地完成了数据库的恢复工作。
SQL> alter database open resetlogs;
数据库已更改。 在做了alter database open resetlogs;会把online redelog file清空,数据文件丢失.所以这个时候要做一个全备份。resetlogs命令表示一个数据库逻辑生存期的结束和另一个数据库逻辑生存期的开始,每次使用resetlogs命令的时候,SCN不会被重置,不过oracle会重置日志序列号,而且会重置联机重做日志内容.这样做是为了防止不完全恢复后日志序列会发生冲突(因为现有日志和数据文件间有了时间差)。Oracle 控制文件
http://user.qzone.qq.com/251097186/blog/1252557580
create controlfile reuse database orcl noresetlogs archivelog
*
ERROR at line 1:
ORA-01503: CREATE CONTROLFILE failed
ORA-01163: SIZE clause indicates 640 (blocks), but should match header 5120
ORA-01110: data file 2: '/u01/app/oracle/oradata/orcl/undotbs01.dbf'
这里的情况很复杂,不是说不可能恢复,不过是需要很多的临场的经验一步步的排查,才有可能找到问题,解决问题,所以作为新手在这方面处理还有些过早,如果是学习的话,可以先跳过这样的错误。至于这里的问题是个工作原则的问题,平时要多做备份,而且对于删除重要文件这样的操作前要先备份。作为dba就是要知道一个enter可能对我们造成的打击。
这是我做过的一个恢复过程,首先是利用老的控制文件alter database backup controlfile to trace;
利用生成的trace 文件编辑sql脚本恢复的过程:
LZ 可以参考下
1>创建pfile,制定我欲恢复的控制文件的位置
[oracle@yysf dbs]$ vi initorcl.oraorcl.__db_cache_size=79691776
orcl.__java_pool_size=4194304
orcl.__large_pool_size=4194304
orcl.__shared_pool_size=109051904
orcl.__streams_pool_size=0
*.audit_file_dest='/oracle/admin/orcl/adump'
*.audit_trail='NONE'
*.background_dump_dest='/oracle/admin/orcl/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/home/oracle/recover.ctl'
*.core_dump_dest='/oracle/admin/orcl/cdump'
*.db_block_size=8192
*.db_cache_size=79691776
*.db_create_file_dest='/oracle/oradata'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='orcl'
*.db_recovery_file_dest='/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.java_pool_size=4194304
*.job_queue_processes=10
*.large_pool_size=4194304
*.log_archive_format='%t_%s_%r.dbf'
*.open_cursors=300
*.pga_aggregate_target=66060288
*.processes=150
*.remote_login_passwordfile='exclusive'
*.sga_target=201326592
*.shared_pool_size=109051904
*.streams_pool_size=0
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/oracle/admin/orcl/udump'
~
2.察看trc 文件,把建立控制文件的那一部分拷贝出来:
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 (
'/oracle/oradata/ORCL/onlinelog/o1_mf_1_5bbblfr4_.log',
'/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_1_5bbblgwf_.log',
'/home/oracle/damao.dbf'
) SIZE 50M,
GROUP 2 (
'/oracle/oradata/ORCL/onlinelog/o1_mf_2_5bbbljjw_.log',
'/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_2_5bbblkdc_.log'
) SIZE 50M,
GROUP 3 (
'/oracle/oradata/ORCL/onlinelog/o1_mf_3_5bbbllln_.log',
'/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_3_5bbblmq0_.log'
) SIZE 50M
-- STANDBY LOGFILE
DATAFILE
'/oracle/oradata/ORCL/datafile/o1_mf_system_5bbbjkn1_.dbf',
'/oracle/oradata/ORCL/datafile/o1_mf_undotbs1_5bbbjkv1_.dbf',
'/oracle/oradata/ORCL/datafile/o1_mf_sysaux_5bbbjko0_.dbf',
'/oracle/oradata/ORCL/datafile/o1_mf_users_5bbbjkw8_.dbf',
'/oracle/oradata/ORCL/datafile/o1_mf_example_5bbbmdyq_.dbf'
CHARACTER SET AL32UTF8
;做成文件 recover.sql
[oracle@yysf ~]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Sun Sep 13 21:47:46 2009Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining optionsSQL> shutdown abort;
ORACLE instance shut down.
---用建立的pfile把数据库置于 nomount状态,---------
SQL> startup nomount pfile='/oracle/product/10.2.0/db_1/dbs/initorcl.ora';
ORACLE instance started.Total System Global Area 201326592 bytes
Fixed Size 1218508 bytes
Variable Size 117442612 bytes
Database Buffers 79691776 bytes
Redo Buffers 2973696 bytes----用建立的sql脚本重建控制文件---------
SQL> @/home/oracle/control.sql
ORA-01081: cannot start already-running ORACLE - shut it down firstControl file created.恢复数据库,并已resetlogs 方式打开数据库。
[oracle@yysf ~]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Sun Sep 13 21:50:31 2009Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining optionsSQL> select status from v$instance;STATUS
------------
MOUNTED
SQL> recover database using backup controlfile;
ORA-00279: change 813732 generated at 09/13/2009 21:21:13 needed for thread 1
ORA-00289: suggestion :
/oracle/flash_recovery_area/ORCL/archivelog/2009_09_13/o1_mf_1_26_%u_.arc
ORA-00280: change 813732 for thread 1 is in sequence #26
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_2_5bbblkdc_.log
Log applied.
Media recovery complete
SQL> alter database open resetlogs;Database altered.
多谢朋友的回复,请问alter database backup controlfile to trace;这句执行后会在onlinelog或udump中生成trace文件么,没有找到
orcl.__db_cache_size=79691776
orcl.__java_pool_size=4194304
orcl.__large_pool_size=4194304
orcl.__shared_pool_size=109051904
orcl.__streams_pool_size=0
*.audit_file_dest='/oracle/admin/orcl/adump'
*.audit_trail='NONE'
*.background_dump_dest='/oracle/admin/orcl/bdump'
*.compatible='10.2.0.1.0'
*.control_files='/home/oracle/old.ctl'
*.core_dump_dest='/oracle/admin/orcl/cdump'
*.db_block_size=8192
*.db_cache_size=79691776
*.db_create_file_dest='/oracle/oradata'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='orcl'
*.db_recovery_file_dest='/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=2147483648
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.java_pool_size=4194304
*.job_queue_processes=10
*.large_pool_size=4194304
*.log_archive_format='%t_%s_%r.dbf'
*.open_cursors=300
*.pga_aggregate_target=66060288
*.processes=150
*.remote_login_passwordfile='exclusive'
*.sga_target=201326592
*.shared_pool_size=109051904
*.streams_pool_size=0
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/oracle/admin/orcl/udump'
2>利用老的控制文件把数据库置于mount状态,
SQL> startup nomount pfile='initorcl.ora';SQL> select status from v$instance; STATUS
------------
MOUNTED 3>产生数据库脚本 trace文件,
SQL>alter database backup controlfile to trace;
需要数据库在挂载的情况下,
生成一个trc文件导出到 udump文件夹中去,
这个trc大小是7K左右.
一般这样的情况,能够进行恢复的话, 需要以下条件
1. 上次冷备份一份
2. 从上次冷备份以来的所以归档文件,如果是归档文件中间有中断的,只能恢复好中断前的
3. 有完整而正确的redo文件
4. 数据库必须是正常关闭的,如果是abort关闭,必须保证是clear的数据库
5. 故障的数据库故障后,没有进行任何非正确的恢复手段。
只有是以上这样的前提,才能进行正确的恢复,否则就是靠经验来进行排查,用一些方法来诊断和恢复了。所以,你这里没有备份的话,已经是基本上断了正常恢复的所有的路了。
http://bbs.inthirties.com/thread-83-1-1.htmloracle恢复流程.doc
http://bbs.inthirties.com/thread-83-1-1.html oracle恢复流程.doc