通过dbf文件恢复oracle

可能有些人会由于各种原因经常重装系统,但是系统里面总是有一些比较重要的软件在重装后就不能用了。比如oracle数据库,众所周知数据库如果通过dmp导入导出麻烦不说,还很耗时,特别是像笔者一个数据库就有上百G的内容,通过导入dmp来恢复就更不现实了。遇到这样的情况,我们就来通过已有的数据库文件还原一个数据库吧。

(1)准备一个和原来数据库版本一样的oracle安装文件,如Oracle R2 (10.2.0.1) 64位企业版

(2)删除或备份原来的数据库安装目录,如“E:\oracle\product\10.2.0\db_1”

(3)点击oracle安装文件,开始进行安装,注意这里oracle安装文件一定要是和以前同一个版本的。在安装界面中将“Oracle主目录位置”改成和以前的安装路径一样,这里是“E:\oracle\product\10.2.0\db_1”。同时我们这里只要安装软件就好了,把“创建数据库”前面的勾去掉。设置完成后点击下一步。

(4) 数据库软件装好了,打开一个cmd窗口,执行命令“oradim -new -sid XXX”来创建一个实例,其中XXX是数据库以前的实例名。创建完成后我们的实例也就创建好了。这样创建的实例需要每次手工启动,如果你不喜欢这样,就再执行另外一个命令来修改下设置“oradim.exe -edit  -sid XXXX -startmode a”

(5)登录oracle,启动数据库,同样在cmd窗口下,先设置oracle_sid=XXX(注意按照实际的sid进行替换)。然后以管理员权限登录数据库“sqlplus / as sysdba”。登录完成后执行startup,开始启动数据库。最后发现报了一个错,原来是因为我们第一步备份的文件没有替换回去。

(6)放回.dbf文件,重启oracle服务后,配置监听程序和网络服务

将我们第一步步骤中备份的/database/initXXX.ora放回到以前的目录中,再重新启动下oracle实例,这次终于启动成功了。后面的步骤就简单了,配置下监听程序,设置下tnsname,同时一定要修改注册表中oracle_sid值,或者新增一个名为“oracle_sid”的环境变量。

参考文章

myscle如何通过dbf文件恢复oracle

原文地址:https://www.cnblogs.com/arxive/p/9452549.html

时间: 2024-08-02 06:56:56

通过dbf文件恢复oracle的相关文章

oracle dbf 文件更换目录

今天在服务器上恢复数据库,数据库文件存储所在磁盘空间不够,需要将数据库dbf移植到其他有空间的磁盘. 记录一下解决过程,按照如下步骤进行: 1.sqlplus登录oracle, sqlplus system/[email protected] as sysdba 2.先关闭数据库,执行 shutdown immediate 3.以mount形式加载数据库,执行 startup mount; 4.找到需要移植的dbf文件路径,例如:C:\app\XD\oradata\orcl\cmis\CMIS_

由于删除DBF文件报错 —— ORA-01033: ORACLE initialization or shutdown in progress

由于移动或删除DBF文件报错:ORA-01033: ORACLE initialization or shutdown in progress 原因:一般该类故障通常是由于移动文件而影响了数据库日志文件出现损坏而导致的无法正常进行IO操作而引起的错误.ORACLE将识别为数据库未装载完成而导致出现如上错误. 故障特征:使用命令行sqlplus或PL/SQL Developer均无法打开数据库.但是可以使用sys用户以sysdba的身份登录系统 解决方法: 1. 在 ‘开始’-->‘运行’执行cm

手工备份恢复oracle数据库

 手工备份恢复oracle数据库: 虽然已经有了rman工具 但是手工恢复oracle能够让你对oracle数据库有更加深入的了解 数据库一致性开机条件: 数据文件 scn,控制文件 scn,redo scn一致 控制文件记录: 数据文件应该到达的scn 当前redo 数据的物理结构信息 归档信息 前提条件: 归档日志开启 数据文件有备份 控制文件有备份 备份数据: 数据文件备份: 数据文件进入备份模式: select 'alter tablespace '|| tablespace_name|

oracle11 表空间dbf文件迁移

当oracle的数据文件所在的磁盘空间不够用了或其他情况需要把dbf文件迁移到另外的位置,下面是操作步骤: 1.sqlplus sys/sys as sysdba 2.shutdown immediate 3.copy dbf文件到新的位置 4.startup mount; 5.alter database rename file 'E:\oracle\oradata\hqbi\EFMWEB03.DBF' to 'G:\oradata\hqbi\EFMWEB03.DBF'; 第一个文件为原来表空

只有DBF的恢复

只有dbf的恢复 灾难场景: 1. ctl,redo,spfile丢失,dbf未丢失,无备份 2. ctl,redo,spfile,dbf均丢失,有备份但无ctl备份 实验一:ctl,redo,spfile丢失,dbf未丢失,无备份,数据库正常关闭 SQL> shutdown immediate [[email protected] ~]$ cd $ORACLE_HOME/dbs/ [[email protected] dbs]$ cat initdong.ora *.control_files

linux下误删数据文件恢复

linux下文件被删除可以用很多工具进行恢复,例如undelete(适合ext2,ext3).giis(不能恢复安装giis之前的文件).ext3grep(仅限ext3).R-linux(支持ext3,但是需要操作系统是32位的).还有testdisk等等就不一一介绍了.需要注意的是,我们误删文件后,最好保持现场. 下面不用工具来恢复误删的数据文件: [email protected]>select * from zbdba; select * from zbdba * ERROR at lin

丢失了所有控制文件副本后进行恢复 以trace文件恢复

实验:基于trace的控制文件重建及数据库回复(所有控制文件丢失等) 1.测试数据的构造,创建只读表空间 create tablespace tbs_users datafile '/u01/app/oracle/oradata/PROD/datafile/tbs_users1.dbf' size 5m, '/u01/app/oracle/oradata/PROD/datafile/tbs_users2.dbf' size 5m; alter tablesapce tbs_users read

数据库数据文件和控制文件恢复

数据库数据文件和控制文件恢复一次数据库数据文件和控制文件丢失或未创建恢复数据库启动方法该文档适用数据恢复:数据库安装的时候丢失控制文件和数据文件或者数据库故障的数据.控制文件丢失或者数据库的本来数据.控制文件丢失有备份文件,用备份文件恢复本文的环境变量ORACLE_BASE=/oo/oracleORACLE_HOME=/oo/oracle/11g 1.数据库启动报错数据库启动时报错: 报错1: SQL> startup ORA-01261: Parameter db_recovery_file_

Networker 8.1异机恢复Oracle 11gR2

本文是一篇迟来的博文,写这篇博文源于近日在整理技术笔记时,看到2年前写的EMC Networker 8.1异机恢复Oracle 11gR2数据库的操作笔记(测试的是假如生产数据库服务器崩溃宕机,而将备份数据恢复到备用数据库服务器).虽然去年EMC就已推出了Networker 9,但本文可能多少还有一点参考价值,便稍加整理后发了出来. 一.测试环境 计算机名 IP地址 操作系统 角色 安装软件 Bakserver 10.1.1.4 RedHat 6 备份服务器 EMC Networker 8.1.