最近,我的电脑的HD出现了问题。我的oracle 10g xe已安装并在此HD中运行。
但是在HD停止运行之前,我在“oradata \ XE”文件夹中执行了DBF文件的副本。这些文件是: CONTROL.DBF,SYSAUX.DBF,SYSTEM.DBF,TEMP.DBF,UNDOTBS1.DBF,USERS.DBF
我想知道是否可以从这些文件中恢复数据。或者,如果可以将此文件中的数据导入到Oracle 10g的新安装中。 我有所有用户和密码。
有人可以帮助我吗?
提前谢谢你。 最诚挚的问候。
答案 0 :(得分:2)
当然,没问题。只要您在数据库脱机时制作副本。将文件复制到新驱动器上的相同PATH。 Oracle在控制文件中记录数据文件的位置(完全限定)。假设CONTROL.DBF是您的控制文件,请从创建包含
的init.ora开始control_files='d:\some\dir\CONTROL.dbf'
dbname='your_db_name'
您可能需要一些其他参数,添加您需要的参数。
看看会发生什么。最有可能的是抱怨丢失的redolog文件。 数据库抱怨日志,它已经安装。使用以下方法检查日志:
select group#, archived, status from v$log;
取决于每个组#问题的状态和归档列 如果STATUS = INACTIVE且ARCHIVED = YES
alter database clear logfile group <grp number>;
如果STATUS = INACTIVE且ARCHIVED = NO STATUS = INACTIVE和ARCHIVED = NO
alter database clear UNARCHIVED logfile group <grp number>;
如果成功,请打开数据库
alter database open;
在清除日志文件期间,会创建丢失的日志文件。