参考的4个URL。
http://www.51testing.com/html/49/n-214249.htmlhttp://topic.csdn.net/u/20091118/15/0b6e197e-cbcb-432c-8797-c49a86975f48.htmlhttp://blog.csdn.net/caok/archive/2009/10/23/4718220.aspxhttp://blog.sina.com.cn/s/blog_40dd06510100bv0r.html
------------------------------------以下是我琢磨时候的操作。只是给自己以后用,大家也可以参考-------------------------------------------
Microsoft Windows [版本 5.2.3790](C) 版权所有 1985-2003 Microsoft Corp.
C:\Documents and Settings\Administrator>cd\
C:\>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期日 3月 6 09:48:07 2011
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn system/system as sysdba已连接。SQL> shutdown immediate数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。
SQL> startupORACLE 例程已经启动。
Total System Global Area 612368384 bytesFixed Size 1250428 bytesVariable Size 171969412 bytesDatabase Buffers 432013312 bytesRedo Buffers 7135232 bytes数据库装载完毕。ORA-01122: 数据库文件 1 验证失败ORA-01110: 数据文件 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\SYSTEM01.DBF'ORA-01207: 文件比控制文件更新 - 旧的控制文件
SQL> alter system set "_allow_resetlogs_corruption"=true scope=spfile;
系统已更改。
SQL> alter database open RESETLOGS 2 recover database 3SQL> alter database open 2 exp cetrx/cetrx@DBNAME 3SQL> shutdown immediateORA-01109: 数据库未打开
已经卸载数据库。ORACLE 例程已经关闭。SQL> startupORACLE 例程已经启动。
Total System Global Area 612368384 bytesFixed Size 1250428 bytesVariable Size 171969412 bytesDatabase Buffers 432013312 bytesRedo Buffers 7135232 bytes数据库装载完毕。ORA-01122: 数据库文件 1 验证失败ORA-01110: 数据文件 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\SYSTEM01.DBF'ORA-01207: 文件比控制文件更新 - 旧的控制文件
SQL> alter database backup controlfile to trace as 'f:\aa';
数据库已更改。
SQL> shutdown immediateORA-01109: 数据库未打开
已经卸载数据库。ORACLE 例程已经关闭。SQL> startup nomount;ORACLE 例程已经启动。
Total System Global Area 612368384 bytesFixed Size 1250428 bytesVariable Size 171969412 bytesDatabase Buffers 432013312 bytesRedo Buffers 7135232 bytesSQL> CREATE CONTROLFILE REUSE DATABASE "DBNAME" RESETLOGS NOARCHIVELOG 2 MAXLOGFILES 16 3 MAXLOGMEMBERS 3 4 MAXDATAFILES 100 5 MAXINSTANCES 8 6 MAXLOGHISTORY 292 7 LOGFILE 8 GROUP 1 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\REDO01.LOG' SIZE 50M, 9 GROUP 2 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\REDO02.LOG' SIZE 50M, 10 GROUP 3 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\REDO03.LOG' SIZE 50M 11 -- STANDBY LOGFILE 12SQL> DATAFILESP2-0042: 未知命令 "DATAFILE" - 其余行忽略。SQL> 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\SYSTEM01.DBF',SP2-0734: 未知的命令开头 "'D:\ORACLE..." - 忽略了剩余的行。SQL> 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\UNDOTBS01.DBF',SP2-0734: 未知的命令开头 "'D:\ORACLE..." - 忽略了剩余的行。SQL> 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\SYSAUX01.DBF',SP2-0734: 未知的命令开头 "'D:\ORACLE..." - 忽略了剩余的行。SP2-0044: 要获取已知命令的列表, 请输入 HELP;输入 EXIT 可退出。SQL> 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\USERS01.DBF',SP2-0734: 未知的命令开头 "'D:\ORACLE..." - 忽略了剩余的行。SQL> 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\EXIMTRX',SP2-0734: 未知的命令开头 "'D:\ORACLE..." - 忽略了剩余的行。SQL> 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\EXIMUSER'SP2-0734: 未知的命令开头 "'D:\ORACLE..." - 忽略了剩余的行。SQL> CHARACTER SET ZHS16GBKSP2-0734: 未知的命令开头 "CHARACTER ..." - 忽略了剩余的行。SP2-0044: 要获取已知命令的列表, 请输入 HELP;输入 EXIT 可退出。SQL> oradim /?SP2-0042: 未知命令 "oradim /?" - 其余行忽略。SQL> CREATE CONTROLFILE REUSE DATABASE "DBNAME" RESETLOGS NOARCHIVELOG 2 MAXLOGFILES 16 3 MAXLOGMEMBERS 3 4 MAXDATAFILES 100 5 MAXINSTANCES 8 6 MAXLOGHISTORY 292 7 LOGFILE 8 GROUP 1 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\REDO01.LOG' SIZE 50M, 9 GROUP 2 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\REDO02.LOG' SIZE 50M, 10 GROUP 3 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\REDO03.LOG' SIZE 50M 11 DATAFILE 12 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\SYSTEM01.DBF', 13 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\UNDOTBS01.DBF', 14 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\SYSAUX01.DBF', 15 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\USERS01.DBF', 16 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\EXIMTRX', 17 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\DBNAME\EXIMUSER' 18 CHARACTER SET ZHS16GBK 19 ;
控制文件已创建。
SQL> RECOVER DATABASEORA-00283: ??????????ORA-01610: ?? BACKUP CONTROLFILE ??????????
SQL> ALTER DATABASE OPEN 2 select * from imlc_master;select * from imlc_master*第 2 行出现错误:ORA-02288: ??? OPEN ??
SQL> shutdown immediateORA-01109: ??????
已经卸载数据库。ORACLE 例程已经关闭。SQL> startupORACLE 例程已经启动。
Total System Global Area 612368384 bytesFixed Size 1250428 bytesVariable Size 171969412 bytesDatabase Buffers 432013312 bytesRedo Buffers 7135232 bytes数据库装载完毕。ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
SQL> alter database open resetlogs;
数据库已更改。
SQL> select name from v$tempfile;
未选定行
SQL> alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf' 2SQL> select name from v$tempfile;
未选定行
SQL> 本文来自联城技术网(http://tech.16c.cn/)转发请保留地址:http://www.svn8.com/sql/Oracle/2010061136631.htmlSP2-0734: 未知的命令开头 "本文来自联..." - 忽略了剩余的行。SQL> select name from v$tempfile;
未选定行
SQL> ed已写入 file afiedt.buf
1 select name from v$tempfile 2* /alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf' size 10MSQL> ed已写入 file afiedt.buf
1* alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf' size 10MSQL> ed已写入 file afiedt.buf
1* alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf'SQL> ed已写入 file afiedt.buf
1* select name from v$tempfile;SQL> /select name from v$tempfile; *第 1 行出现错误:ORA-00911: 无效字符
SQL> ed已写入 file afiedt.buf
1 select name from v$tempfile; 2* /alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf' size 10MSQL> /select name from v$tempfile; *第 1 行出现错误:ORA-00911: 无效字符
SQL> ed已写入 file afiedt.buf
1 alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf' size 10M 2* /SQL> //*第 2 行出现错误:ORA-00933: SQL 命令未正确结束
SQL> ed已写入 file afiedt.buf
1* alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf' size 10MSQL> /alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf' size 10M*第 1 行出现错误:ORA-01119: 创建数据库文件 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf'时出错ORA-27038: 所创建的文件已存在OSD-04010: 指定了 <create> 选项, 但文件已经存在
SQL> ed已写入 file afiedt.buf
1* alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\temp01.dbf'SQL> /
表空间已更改。
SQL>
可以EXP 了
此次恢复是多个,EXP 一个后。继续创建下一个要恢复的实力名字<最好还是一致的>如果报 协议适配器错误 设置SID 指向然后SQLPLUS 1.进去后 shutdown immediate 2. 替换文件3. startup
继续EXP