ORACLE10G 只有oradata 数据恢复

参考的4个URL。

http://www.51testing.com/html/49/n-214249.html
http://topic.csdn.net/u/20091118/15/0b6e197e-cbcb-432c-8797-c49a86975f48.html
http://blog.csdn.net/caok/archive/2009/10/23/4718220.aspx
http://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> startup
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             171969412 bytes
Database Buffers          432013312 bytes
Redo 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
  3
SQL> alter database open
  2  exp cetrx/cetrx@DBNAME
  3
SQL> shutdown immediate
ORA-01109: 数据库未打开


已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             171969412 bytes
Database Buffers          432013312 bytes
Redo 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 immediate
ORA-01109: 数据库未打开


已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup nomount;
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             171969412 bytes
Database Buffers          432013312 bytes
Redo Buffers                7135232 bytes
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  -- STANDBY LOGFILE
 12
SQL> DATAFILE
SP2-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 ZHS16GBK
SP2-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 DATABASE
ORA-00283: ??????????
ORA-01610: ?? BACKUP CONTROLFILE ??????????


SQL> ALTER DATABASE OPEN
  2  select * from imlc_master;
select * from imlc_master
*
第 2 行出现错误:
ORA-02288: ??? OPEN ??


SQL> shutdown immediate
ORA-01109: ??????


已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             171969412 bytes
Database Buffers          432013312 bytes
Redo 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\t
emp01.dbf'
  2
SQL> select name from v$tempfile;

未选定行

SQL> 本文来自联城技术网(http://tech.16c.cn/)转发请保留地址:http://www.svn8.co
m/sql/Oracle/2010061136631.html
SP2-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 10M
SQL> ed
已写入 file afiedt.buf

  1* alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\t
emp01.dbf' size 10M
SQL> ed
已写入 file afiedt.buf

  1* alter tablespace temp add tempfile 'D:\oracle\product\10.2.0\oradata\DBNAME\t
emp01.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 10M
SQL> /
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\t
emp01.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\t
emp01.dbf' size 10M
SQL> /
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\t
emp01.dbf'
SQL> /

表空间已更改。

SQL>

 

 


可以EXP 了

此次恢复是多个,EXP 一个后。继续创建下一个要恢复的实力名字<最好还是一致的>
如果报 协议适配器错误 设置SID 指向
然后SQLPLUS
1.进去后 shutdown immediate
2. 替换文件
3. startup

继续EXP

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值