ALLSTARS_ORACLE 发表于 2017-4-15 23:38:44

只有表空间文件dbf 能进行恢复数据库吗?


我在复制orcl文件夹后,把控制文件和日志文件弄丢了。


不要日志文件,会报错。ora-1565  找不到日志文件



能具体一点怎么做吗?我是新手。因为电脑用问题,只把orcl 文件下夹的东西复制出来了。然后进行了格式化。什么都没有了。不知道怎么把控制文件和日志文件弄丢了。


写些什么?在新的实例里复制过来行吗?需要改些什么?

SQL> @d:/createcontrolfile.sql;
ORACLE 例程已经启动。

Total System Global Area  599785472 bytes
Fixed Size                  1250356 bytes
Variable Size             163580876 bytes
Database Buffers          427819008 bytes
Redo Buffers                7135232 bytes
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG
*
第 1 行出现错误:
ORA-01503: CREATE CONTROLFILE ??
ORA-01565: ???? 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG' ???
ORA-27041: ??????
OSD-04002: ????????????
O/S-Error: (OS 2) ??????????????????????

在重建控制文件时报这个错。

大侠,控制文件已创建成功。但出错误。
SQL> startup open;
ORACLE 例程已经启动。

Total System Global Area  599785472 bytes
Fixed Size                  1250356 bytes
Variable Size             163580876 bytes
Database Buffers          427819008 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。
ORA-01113: 文件 1 需要介质恢复
ORA-01110: 数据文件 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF'
问题已解决:
   
1.重建一样的实例。shutdown immediate;
      
2.删除sid文件下的内容,将原数据复制到sid文件夹下。
   
3.重建控制文件:
   startup nomount;
   
CREATE CONTROLFILE REUSE DATABASE "XXXX" RESETLOGS
     NOARCHIVELOG
     
MAXLOGFILES 5
     
MAXLOGMEMBERS 5
     
MAXDATAFILES 100
     
MAXINSTANCES 1
   
MAXLOGHISTORY 292

LOGFILE
   
GROUP 1 '/u01/app/oracle/oradata/XXXX/redo01.log'  SIZE 100M,
GROUP 2 '/u01/app/oracle/oradata/XXXX/redo02.log'  SIZE 100M,
   
GROUP 3 '/u01/app/oracle/oradata/XXXX/redo03.log'  SIZE 100M

-- STANDBY LOGFILE

DATAFILE
   '/u01/app/oracle/oradata/XXXX/system01.dbf',
   '/u01/app/oracle/oradata/XXXX/undotbs01.dbf',

'/u01/app/oracle/oradata/XXXX/sysaux01.dbf'

CHARACTER SET US7ASCII
;
4.recover database;
5.recover database until cancel;
6.alter database open

谢谢各位!!!
页: [1]
查看完整版本: 只有表空间文件dbf 能进行恢复数据库吗?