当前位置:首页 » 数据仓库 » oracle通过dbf恢复数据库
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

oracle通过dbf恢复数据库

发布时间: 2022-04-21 19:17:29

❶ ORACLE如何通过DBF文件恢复数据

dbf文件都是一致的,那么可以通过重建控制文件来打开数据库dbf文件并不一致或有损坏且无其他备份的,需要特殊恢复手段,例如:OracleDBA神器:PRM灾难恢复工具,Schema级别数据恢复。PRMForOracleDatabase–schema级别oracle数据库数据恢复特性,PRM即ParnassusDataRecoveryManager是企业级别Oracle数据库灾难恢复工具。PRM可以在无备份的情况下恢复被truncated/drop掉的表,也可以恢复无法打开的Oracle数据库(AlterDatabaseOpen失败)中的数据。PRM是图形化增强版的OracleDUL工具,同时具备很多OracleDUL不具备的特性

❷ oracle数据库恢复方法

第一种:
首先,备份数据库(X:\oracle\oradata)下的数据文件,重新命名即可(否则装数据库的时候会提示sid已存在)。重新安装数据库,当然数据库的名字就是你要恢复的名字。安装完成后,打开控制面板,停止oracle的服务。把(X:\oracle\oradata)下新生成的文件改名,把原先目录下的文件恢复名字。再重新启动oracle服务和监听。用sys/as dba 登陆数据库,可能会提示权限不够(ora-01031)修改(X:\oracle\ora92\network\admin )文件夹下的sqlnet.ora文件,添加SQLNET.AUTHENTICATION_SERVICES= (NTS),增加权限。登陆进去后,打开table提示不能打开。打开common页,执行命令alert database open;这时再刷新table,发现原先的表可以打开了。恢复成功了。再用原先数据库的普通用户进入。发现一切正常。
第二种:
1、首先,将原来的ORACLE文件夹改名,原来的路径是D:/oracle.我暂时改成D:/oracle_old.找来ORACLE(我用的是ORACLE 9I)安装光盘,将ORACLE安装在原来安装的目录下,这样恢复起来更加方便,主要是注册表的内容不用修改。
2、安装完了之后,系统中又有一个可以使用的ORACLE了。这个时候要做的就是将原来的文件和数据恢复过来。第一步,先关闭ORACLE的所有已经启动的项目,在"服务"里面逐一关闭。然后,将安装目录改名。(例如D:/oracle.改成D:/oracle_new,再将D:/oracle_old改成D:/oracle. )这样理论上说从物理层面恢复了ORACLE了。但是现在还不能启动ORACLE的监听程序和服务程序,还要从逻辑上解决。
3、在dos环境下执行一个删除命令:oradim -delete -sid mm,其中mm为创建oracle时候创建的实例 建议执行这个命令后重新启动机器,重启后就可以建立和原来实例名相同的实例。当然你懒,不重新启动也可以,但是你的实例名就不能和原来的一样了。
4、在dos环境下执行命令 oradim -new -sid mm -startmode a -pfile "D:\oracle\admin\mm\pfile\initmm.ora "创建一个新的实例,其中 "mm"为新数据库的名称。
5、启动服务,先打开数据库,然后可以用以前的用户名和密码登陆进去。 要补充的是,一般的ORACLE数据库的监听程序都是用电脑的名称来识别地址的,而不是127.0.0.1或者localhost.所以,如果我们安装系统的时候用的是不同的电脑名称(比如我原来用的是wm_mm.重新安装后用的是wenming_mm),那么还有一个工作要做,就是修改文件 listener.ora.将里面的相关的东西改过来就可以了。
需要耐心、细心,可能在一步里有一个细小的差别就会出些古怪的错误提示,有时需要根据错误提示采取策略,总之原理是,先装一个一模一样的ORACLE,安装目录、数据库名称都一样,这样保证注册表里不用更改;再覆盖物理文件,最后重新实例化,打开数据库就可以进去了。
注:恢复必须要有以下文件 a、初始化参数文件INIT.ORA b、所有数据文件 .dbf c、所有重做日志文件(联机日志、归档日志)redo d、所有控制文件 crtl e、internal密码文件。

❸ oracle dbf如何恢复

dbf 文件都是一致的 ,那么可以通过 重建控制文件 来打开数据库

dbf 文件并不一致 或有损坏 且无其他备份的, 需要特殊恢复手段,例如:

Oracle DBA神器:PRM灾难恢复工具,Schema级别数据恢复。PRM For Oracle Database – schema级别oracle数据库数据恢复特性 ,PRM即ParnassusData Recovery Manager是企业级别Oracle数据库灾难恢复工具。PRM可以在无备份的情况下恢复被truncated/drop掉的表,也可以恢复无法打开的Oracle数据库(Alter Database Open失败)中的数据。 PRM是图形化增强版的Oracle DUL工具,同时具备很多Oracle DUL不具备的特性

❹ oracle11g重装了,原目录还存在,如何将原来的dbf恢复到当前oracle中

1.安装一个和原系统一致的oracle 环境,主要包括版本、数据名sid、实例名、路径和数据库编码一致

2.修改listener.ora的参数

[java]view plain

  • <spanstyle="color:#455353;">SID_LIST_LISTENER=

  • (SID_LIST=

  • (SID_DESC=

  • (SID_NAME=PLSExtProc)

  • (ORACLE_HOME=D:oracleproct10.1.0db_1)

  • (PROGRAM=extproc)

  • )

  • </span><spanstyle="color:#ff0000;">(SID_DESC=

  • (GLOBAL_DBNAME=orcl)//如果已经有这个orcl了,这个文件就不用修改

  • (ORACLE_HOME=D:oracleproct10.1.0db_1)//这里要根据你的实际路径来

  • (SID_NAME=orcl)

  • )</span><spanstyle="color:#455353;">

  • )

  • LISTENER=

  • (DESCRIPTION_LIST=

  • (DESCRIPTION=

  • (ADDRESS_LIST=

  • (ADDRESS=(PROTOCOL=TCP)(HOST=lypch)(PORT=1521))

  • )

  • (ADDRESS_LIST=

  • (ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))

  • )

  • )

  • )</span>

  • 3.修改tnsnames.ora的参数
  • [java]view plain

  • AMMICLY=

  • (DESCRIPTION=

  • (ADDRESS=(PROTOCOL=TCP)(HOST=lypch)(PORT=1521))

  • (CONNECT_DATA=

  • (SERVER=DEDICATED)

  • (SERVICE_NAME=orcl)

  • (UR=A)//参数允许只进行管理性的连接,数据库nomount,mount或者restricted时,动态监听显示状态为BLOCKED时,客户端配置UR=A进行连接。

  • )

  • )

  • EXTPROC_CONNECTION_DATA=

  • (DESCRIPTION=

  • (ADDRESS_LIST=

  • (ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))

  • )

  • (CONNECT_DATA=

  • (SID=PLSExtProc)

  • (PRESENTATION=RO)

  • )

  • )

  • 3.SQL>shutdown immediate 停止服务,将新安装的oracle的dbf备份后删除,将原dbf拷贝到新安装的目录下F:app oshibaoradataorcl
  • 4.原oracle库主目录下的FLASH_RECOVERY_AREA目录全部覆盖到新安装的oracle对应目录下

    5.SQL>startup 再次启动服务

    根据看过博客操作的朋友反馈,多实例时有疑问,按照如下地址操作解决了问题

❺ 如何从完好的oracle数据文件恢复oracle数据库要实际能操作的,我只有dbf文件 20个g

这可能是部分刚接手的运维人员 或者代维人员所要遇到的问题, 一个老的数据库只剩下DBF文件了,要如何恢复其中的数据?

其实这个问题 分成好多种情况,请自行对号入座:

1)数据库所有的DBF文件都在,没有缺失,也没有损坏
这个情况是最简单的 自己建一个参数文件INIT.ORA,并基于这些DBF文件去创建控制文件,然后尝试打开数据库即可。如果说数据文件都是干净的CLEAN的,那么直接可以打开。如果数据文件是DIRTY的,这里由于没有REDO LOG了,所以需要以隐藏参数等方式打开数据库。
2) 数据库DBF有少量缺失,缺失主要是非SYSTEM01.DBF的数据文件,没有损坏
这种情况在 1)的基础上将缺失的数据文件OFFLINE DROP掉就好了,因为对应的数据文件都没了,那么丢了对应数据文件上的数据也很正常
3) 数据库DBF有少量缺失,缺失主要是非SYSTEM01.DBF的数据文件,非SYSTEM01.dbf的数据文件有少量损坏
这种情况在 2)的基础上打开数据库问题并不大,但打开数据库后 由于其他表空间数据文件上有少量损坏,所以具体访问用户数据时可能出现ORA-1578、ORA-8103、ORA-1410、ORA-00600等错误,还是比较容易克服的
4) 数据库DBF有少量缺失,缺失主要是非SYSTEM01.DBF的数据文件,SYTEM01.DBF有损坏
这种情况下打开数据库就不容易了,可能需要用到BBED技术去修改SYSTEM01.DBF,以便才能打开数据库
5) 只有部分DBF,其中还缺失了SYSTEM01.DBF
这种情况不要指望能打开数据库,只能使用PRM-DUL之类的软件 来直接抽取数据

以上情况1)~4) 只要SYSTEM01.DBF还在或者损坏的不是太严重,那么都可以由专业技术人员去打开数据库后导出数据,但是在情况5)下只能使用DUL类工具去抽取数据了。

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

❻ Oracle通过ora和dbf文件恢复数据库

PRM-DUL 可以直接从.DBF数据文件中抽取oracle表数据。

Oracle DBA神器:PRM-DUL灾难恢复工具,Schema级别数据恢复。PRM-DULFor Oracle Database – schema级别oracle数据库数据恢复特性 ,PRM即ParnassusData Recovery Manager是企业级别Oracle数据库灾难恢复工具。PRM可以在无备份的情况下恢复被truncated掉的表,也可以恢复无法打开的Oracle数据库(Alter Database Open失败)中的数据。

❼ oracle 10 只有dbf 文件怎么恢复

oracle 10 只有dbf 文件怎么恢复
1、重新安装后的数据库,按以前表空间、数据文件进行创建。 2、用非系统盘的数据文件来顶替新创建的数据文件。但系统的检查点变了数据库肯定不能启动。 3、要先脱机(Offline)非系统盘的文件,进行做一次价值恢复。