0

最近,我的电脑的高清出现了问题。我的 oracle 10g xe 已安装并在此 HD 中运行。

但在 HD 停止运行之前,我在文件夹“oradata\XE”中执行了 DBF 文件的副本。这些文件是:CONTROL.DBF、SYSAUX.DBF、SYSTEM.DBF、TEMP.DBF、UNDOTBS1.DBF、USERS.DBF

我想知道是否可以从这些文件中恢复我的数据。或者,如果可以将此文件中的数据导入到新安装的 Oracle 10g 中。我有所有的用户名和密码。

有人能帮我吗?

先感谢您。最好的祝福。

4

1 回答 1

2

好没问题。只要您在数据库脱机时进行复制。将文件复制到新驱动器上的相同路径。Oracle 在控制文件中记录数据文件(完全限定)的位置。假设 CONTROL.DBF 是您的控制文件,首先创建一个包含

control_files='d:\some\dir\CONTROL.dbf'
dbname='your_db_name'

你可能需要一些其他参数,添加你需要的。

  1. 转到命令提示符
  2. 确保 ORACLE_HOME 指向安装软件的目录
  3. 确保您的 PATH 变量以 %ORACLE_HOME%\bin 开头
  4. sqlplus / 作为 sysdba
  5. 启动 pfile=d:\where\you\put\it\init.ora

看看会发生什么。它很可能是在抱怨缺少重做日志文件。IT 数据库抱怨日志,它已经安装。使用以下命令检查日志:

select group#, archived, status from v$log;

取决于每个组的状态和存档列# issue If STATUS = INACTIVE and 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;

在清除日志文件期间,会创建丢失的日志文件。

于 2013-09-09T11:06:06.713 回答