现在得到一些文件,说是oracle8热备份出来的文件,现在需要吧数据恢复出来。
文件有:
inithp.oraHPT001S01559.ARCCONTROL01.CTL
CONTROL02.CTLDR01.DBF
INDX01.DBF
OEMREP01.DBF
RBS01.DBF
SYSTEM01.DBF
TEMP01.DBF
TOOLS01.DBF
USERS01.DBF
DATA_HP.DBF---应该就是需要恢复这个里面的数据现在不知道该怎么办了,通过这些文件能恢复出来吗,查了些资料说是先新建一个然后再把这些文件覆盖上去就可以了,试了下会出错。
各位熟悉的指点下~ 先谢谢了。
文件有:
inithp.oraHPT001S01559.ARCCONTROL01.CTL
CONTROL02.CTLDR01.DBF
INDX01.DBF
OEMREP01.DBF
RBS01.DBF
SYSTEM01.DBF
TEMP01.DBF
TOOLS01.DBF
USERS01.DBF
DATA_HP.DBF---应该就是需要恢复这个里面的数据现在不知道该怎么办了,通过这些文件能恢复出来吗,查了些资料说是先新建一个然后再把这些文件覆盖上去就可以了,试了下会出错。
各位熟悉的指点下~ 先谢谢了。
因为你新建了数据库后密码和原来的不一样,启动文件-inithp.ora也和原来不一样,另外,你建新库时要注意尽量设置得跟原来的一摸一样。我的环境是Windows2003+SP2 Oracle9i(9.2.0.1),做的冷备份(就是拷贝出来、新建库后再拷贝进去)。
然后装好另外一台机,再把导出来的数据imp进入这些最好你先用一台机测试导数据,测试成功后,再进行实际转移
同意2楼的观点,
想恢复里面的数据,大概过程如下:
你需要利用原来的建库脚本.
先建立一个库,把同样的表空间都建立起来,
再把你存下来的这些文件备份覆盖到相应的位置上去.
最后再启动数据库.
如果你是unix操作系统,覆盖后记得要修改文件权限到oracle组.这是我做过的一个数据迁移的案例,你可以以这种方式尝试.不同的是你需要重建一个oracle,
我是在9i上做的, 你可先别动归挡模式:
你还需重建连接oracle的密码,具体可google下.数据库文件的迁移
1、拷贝数据文件到盘阵
SQL>shutdown immediate;
cp /opt/app/oracle/oradata/fjkdsw/redo01.log /mnt/kdsw/redofile/redo01.log
cp /opt/app/oracle/oradata/fjkdsw/redo02.log /mnt/kdsw/redofile/redo02.log
cp /opt/app/oracle/oradata/fjkdsw/redo03.log /mnt/kdsw/redofile/redo03.log
cp /opt/app/oracle/oradata/fjkdsw/system01.dbf /mnt/kdsw/datafile/system01.dbf
cp /opt/app/oracle/oradata/fjkdsw/undotbs01.dbf /mnt/kdsw/datafile/undotbs01.dbf
cp /opt/app/oracle/oradata/fjkdsw/cwmlite01.dbf /mnt/kdsw/datafile/cwmlite01.dbf
cp /opt/app/oracle/oradata/fjkdsw/drsys01.dbf /mnt/kdsw/datafile/drsys01.dbf
cp /opt/app/oracle/oradata/fjkdsw/example01.dbf /mnt/kdsw/datafile/example01.dbf
cp /opt/app/oracle/oradata/fjkdsw/indx01.dbf /mnt/kdsw/datafile/indx01.dbf
cp /opt/app/oracle/oradata/fjkdsw/tools01.dbf /mnt/kdsw/datafile/tools01.dbf
cp /opt/app/oracle/oradata/fjkdsw/users01.dbf /mnt/kdsw/datafile/users01.dbf
cp /oradata/statindex01.dbf /mnt/kdsw/datafile/statindex01.dbf
cp /oradata/statdata01.dbf /mnt/kdsw/datafile/statdata01.dbf
cp /oradata/statdata02.dbf /mnt/kdsw/datafile/statdata02.dbf
cp /opt/app/oracle/oradata/blues/page00db2.dbf /mnt/kdsw/datafile/page00db2.dbf
cp /opt/app/oracle/oradata/blues/page000db2.dbf /mnt/kdsw/datafile/page000db2.dbf
cp /opt/app/oracle/oradata/blues/pagerbs0.dbf /mnt/kdsw/datafile/pagerbs0.dbf
cp /opt/app/oracle/oradata/harmony.dbf /mnt/kdsw/datafile/harmony.dbf
cp /opt/app/oracle/oradata/rap01.dbf /mnt/kdsw/datafile/rap01.dbf
cp /oradata/system02.dbf /mnt/kdsw/datafile/system02.dbf
2、拷贝控制文件到盘阵
cp /opt/app/oracle/oradata/fjkdsw/control01.ctl /mnt/kdsw/controlfile/control01.ctl
cp /opt/app/oracle/oradata/fjkdsw/control02.ctl /mnt/kdsw/controlfile/control02.ctl
cp /opt/app/oracle/oradata/fjkdsw/control03.ctl /mnt/kdsw/controlfile/control03.ctl
3、更改控制文件路径
bash-2.05$ sqlplus " / as sysdba"
SQL*Plus: Release 9.2.0.1.0 - Production on Wed May 23 14:34:10 2007
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to an idle instance.
SQL> create pfile='./init.ora' from spfile='./spfilefjkdsw.ora';
SQL>shutdown
修改/opt/app/oracle/product/9.2.0/dbs/init.ora 中控制文件路径为盘阵存放控制文件的路径
SQL>create spfile='./spfilefjkdsw.ora' from pfile='./init.ora';
SQl>startup mount;
4、更改数据文件的路径为盘阵路径
alter database rename file '/opt/app/oracle/oradata/fjkdsw/redo01.log' to '/mnt/kdsw/redofile/redo01.log';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/redo02.log' to '/mnt/kdsw/redofile/redo02.log';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/redo03.log' to '/mnt/kdsw/redofile/redo03.log';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/system01.dbf' to '/mnt/kdsw/datafile/system01.dbf';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/undotbs01.dbf' to '/mnt/kdsw/datafile/undotbs01.dbf';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/cwmlite01.dbf' to '/mnt/kdsw/datafile/cwmlite01.dbf';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/drsys01.dbf' to '/mnt/kdsw/datafile/drsys01.dbf';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/example01.dbf' to '/mnt/kdsw/datafile/example01.dbf';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/indx01.dbf' to '/mnt/kdsw/datafile/indx01.dbf';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/tools01.dbf' to '/mnt/kdsw/datafile/tools01.dbf';
alter database rename file '/opt/app/oracle/oradata/fjkdsw/users01.dbf' to '/mnt/kdsw/datafile/users01.dbf';
alter database rename file '/oradata/statindex01.dbf' to '/mnt/kdsw/datafile/statindex01.dbf';
alter database rename file '/oradata/statdata01.dbf' to '/mnt/kdsw/datafile/statdata01.dbf';
alter database rename file '/oradata/statdata02.dbf' to '/mnt/kdsw/datafile/statdata02.dbf';
alter database rename file '/opt/app/oracle/oradata/blues/page00db2.dbf' to '/mnt/kdsw/datafile/page00db2.dbf';
alter database rename file '/opt/app/oracle/oradata/blues/page000db2.dbf' to '/mnt/kdsw/datafile/page000db2.dbf';
alter database rename file '/opt/app/oracle/oradata/blues/pagerbs0.dbf' to '/mnt/kdsw/datafile/pagerbs0.dbf';
alter database rename file '/opt/app/oracle/oradata/harmony.dbf' to '/mnt/kdsw/datafile/harmony.dbf';
alter database rename file '/opt/app/oracle/oradata/rap01.dbf' to '/mnt/kdsw/datafile/rap01.dbf';
alter database rename file '/oradata/system02.dbf' to '/mnt/kdsw/datafile/system02.dbf';
5、更改临时文件路径
bash-2.05$ cp /opt/app/oracle/oradata/fjkdsw/temp01.dbf /opt/app/oracle/oradata/fjkdsw/temp01.dbf.old
bash-2.05$ cp /opt/app/oracle/oradata/blues/PAGETEMP0.dbf /opt/app/oracle/oradata/blues/PAGETEMP0.dbf.old
bash-2.05$ cp /opt/app/oracle/oradata/raptemp01.dbf /opt/app/oracle/oradata/raptemp01.dbf.old
SQL> alter database tempfile '/opt/app/oracle/oradata/fjkdsw/temp01.dbf' drop;
SQL> alter database tempfile '/opt/app/oracle/oradata/blues/PAGETEMP0.dbf' drop;
SQL> alter database tempfile '/opt/app/oracle/oradata/raptemp01.dbf' drop;
SQL>alter database open;
SQL> alter tablespace TEMP add tempfile '/mnt/kdsw/datafile/temp01.dbf' size 8196M reuse;
SQL> alter tablespace RAPTEMP add tempfile '/mnt/kdsw/datafile/PAGETEMP0.dbf' size 3096M reuse;
SQL> alter tablespace PAGETEMP0 add tempfile '/mnt/kdsw/datafile/raptemp01.dbf' size 3096M reuse;
6、修改归档路径
SQL> alter system set log_archive_dest_1='LOCATION=/mnt/kdsw/archive' scope=both;
System altered.
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Disabled
Archive destination /mnt/kdsw/archive
Oldest online log sequence 124
Next log sequence to archive 126
Current log sequence 126
测试成功后,再使用一下sqlplus:conn 用户名/密码@连接串,试试。
位置在
注: alert 文件位置
unix下在:$ORACLE_BASE/admin/sid/bdump下
windows:%ORACLE_BASE%/admin/sid/bdump下 把里面的内容贴出来看下