首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 冲浪宝典 > 网络资源 > 将Oracle恢复到不同的目录
【标  题】:将Oracle恢复到不同的目录
【关键字】:Oracle
【来  源】:http://www.cublog.cn/u/24475/showart.php?id=276810

将Oracle恢复到不同的目录

将Oracle恢复到不同的目录



引自:http://www.linuxgoo.com/2005/6713/11263475706.html


C:\Documents and Settings\Administrator.XY>rman target/
恢复管理器: Release 10.2.0.1.0 - Production on 星期三 2月 28 16:42:59 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到目标数据库: ORCL (DBID=1140649303)
RMAN> backup database format 'd:\%s.bak';
启动 backup 于 28-2月 -07
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=143 devtype=DISK
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBF
输入数据文件 fno=00003 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBF
输入数据文件 fno=00005 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF
输入数据文件 fno=00002 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBF
输入数据文件 fno=00006 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEST01.DBF
输入数据文件 fno=00004 name=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 28-2月 -07
通道 ORA_DISK_1: 已完成段 1 于 28-2月 -07
段句柄=D:\67.BAK 标记=TAG20070228T164332 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:45
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
备份集中包括当前控制文件
在备份集中包含当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 28-2月 -07
通道 ORA_DISK_1: 已完成段 1 于 28-2月 -07
段句柄=D:\68.BAK 标记=TAG20070228T164332 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:05
完成 backup 于 28-2月 -07
RMAN> restore controlfile from 'd:\68.bak'
2> ;
启动 restore 于 28-2月 -07
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK
通道 ORA_DISK_1: 正在复原控制文件
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:05
输出文件名=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL
输出文件名=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL
输出文件名=D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL
完成 restore 于 28-2月 -07
RMAN> alter database mount;
数据库已装载
释放的通道: ORA_DISK_1
RMAN> run{
2> set newname for datafile 1 to 'd:\bak\system.dbf';
3> set newname for datafile 2 to 'd:\bak\UNDOTBS01.dbf';
4> set newname for datafile 3 to 'd:\bak\SYSAUX01.dbf';
5> set newname for datafile 4 to 'd:\bak\USERS01.dbf';
6> set newname for datafile 5 to 'd:\bak\EXAMPLE01.dbf';
7> set newname for datafile 6 to 'd:\bak\TEST01.dbf';
8> restore datafile 1,2,3,4,5,6;
9> switch datafile all;
10> }
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
启动 restore 于 28-2月 -07
启动 implicit crosscheck backup 于 28-2月 -07
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK
已交叉检验的 3 对象
完成 implicit crosscheck backup 于 28-2月 -07
启动 implicit crosscheck copy 于 28-2月 -07
使用通道 ORA_DISK_1
已交叉检验的 9 对象
完成 implicit crosscheck copy 于 28-2月 -07
搜索恢复区域中的所有文件
正在编制文件目录...
没有为文件编制目录
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到D:\BAK\SYSTEM.DBF
正将数据文件00002恢复到D:\BAK\UNDOTBS01.DBF
正将数据文件00003恢复到D:\BAK\SYSAUX01.DBF
正将数据文件00004恢复到D:\BAK\USERS01.DBF
正将数据文件00005恢复到D:\BAK\EXAMPLE01.DBF
正将数据文件00006恢复到D:\BAK\TEST01.DBF
通道 ORA_DISK_1: 正在读取备份段 D:\67.BAK
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = D:\67.BAK 标记 = TAG20070228T164332
通道 ORA_DISK_1: 恢复完成, 用时: 00:01:42
完成 restore 于 28-2月 -07
数据文件 1 已转换成数据文件副本
输入数据文件副本 recid=38 stamp=615747058 文件名=D:\BAK\SYSTEM.DBF
数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=39 stamp=615747058 文件名=D:\BAK\UNDOTBS01.DBF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=40 stamp=615747058 文件名=D:\BAK\SYSAUX01.DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=41 stamp=615747058 文件名=D:\BAK\USERS01.DBF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=42 stamp=615747059 文件名=D:\BAK\EXAMPLE01.DBF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=43 stamp=615747059 文件名=D:\BAK\TEST01.DBF
RMAN> recover database;
启动 recover 于 28-2月 -07
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 2 已作为文件 D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LO
G 存在于磁盘上
存档日志文件名 =D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG 线程 =1 序列 =2
介质恢复完成, 用时: 00:00:03
完成 recover 于 28-2月 -07
RMAN> alter database open;
MAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: alter db 命令 (在 02/28/2007 16:53:09 上) 失败
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
RMAN> alter database open resetlogs;
数据库已打开
下一步迁移控制文件和redo到新目录下
C:\Documents and Settings\Administrator.XY>sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 2月 28 16:56:52 2007
Copyright (c) 1982, 2005, Oracle. All rights reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> select group#,status from v$log;
GROUP# STATUS
---------- ----------------
1 UNUSED
2 CURRENT
3 UNUSED
SQL> col group# for 9
SQL> col member for a60;
SQL> select group#,member from v$logfile;
GROUP# MEMBER
------ ------------------------------------------------------------
3 D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG
2 D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG
1 D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG
SQL> alter database drop logfile 'd:\oracle\product\10.2.0\oradata\orcl\redo01.l
og';
数据库已更改。

SQL> alter database add logfile 'd:\bak\redo01.log' size 50M;
数据库已更改。

SQL> alter database drop logfile 'd:\oracle\product\10.2.0\oradata\orcl\redo03.l
og';
数据库已更改。
SQL> alter database add logfile 'd:\bak\redo03.log' size 50M;
数据库已更改。
SQL> alter system switch logfile;
系统已更改。

SQL> alter database drop logfile 'd:\oracle\product\10.2.0\oradata\orcl\redo02.l
og';
数据库已更改。
SQL> alter database add logfile 'd:\bak\redo02.log' size 50M;
数据库已更改。
SQL> select group#,member from v$logfile;
GROUP# MEMBER
------ ------------------------------------------------------------
3 D:\BAK\REDO03.LOG
2 D:\BAK\REDO02.LOG
1 D:\BAK\REDO01.LOG
SQL>
切换控制文件
将*.control_files='D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL','D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL'#Restore Controlfile
修改为*.control_files='D:\BAK\CONTROL01.CTL','D:\BAK\CONTROL02.CTL','D:\BAK\CONTROL03.CTL'#Restore Controlfile
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> create spfile from pfile;
文件已创建。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 167772160 bytes
Fixed Size 1247900 bytes
Variable Size 75498852 bytes
Database Buffers 88080384 bytes
Redo Buffers 2945024 bytes
数据库装载完毕。
数据库已经打开。
SQL> select name from v$controlfile;
NAME
-------------------------------------------
D:\BAK\CONTROL01.CTL
D:\BAK\CONTROL02.CTL
D:\BAK\CONTROL03.CTL
SQL> select name from v$datafile;
NAME
-------------------------------------------
D:\BAK\SYSTEM.DBF
D:\BAK\UNDOTBS01.DBF
D:\BAK\SYSAUX01.DBF
D:\BAK\USERS01.DBF
D:\BAK\EXAMPLE01.DBF
D:\BAK\TEST01.DBF
已选择6行。
SQL>
最后就是临时表空间了

SQL> alter database tempfile 'd:\oracle\product\10.2.0\oradata\orcl\temp01.dbf'
offline;
数据库已更改。
SQL> $copy d:\oracle\product\10.2.0\oradata\orcl\temp01.dbf d:\bak\temp01.dbf;
已复制 1 个文件。
SQL> alter database rename 'd:\oracle\product\10.2.0\oradata\orcl\temp01.dbf' to
'd:\bak\temp01.dbf';
alter database rename 'd:\oracle\product\10.2.0\oradata\orcl\temp01.dbf' to 'd:\
bak\temp01.dbf'
*
第 1 行出现错误:
ORA-02231: ALTER DATABASE 选项缺失或无效

SQL> alter database rename file 'd:\oracle\product\10.2.0\oradata\orcl\temp01.db
f' to 'd:\bak\temp01.dbf';
数据库已更改。
SQL> alter database tempfile 'd:\bak\temp01.dbf' online;
数据库已更改。
SQL> select name from v$tempfile;
NAME
--------------------------------------------------------------------------------
D:\BAK\TEMP01.DBF
SQL>
至此就将数据文件,redo日志,控制文件,临时表空间都迁移到其它目录中了。
入门IDS构建过程详述Windows 2003 SP2:【上一篇】
经典C语言100例==36--40:【下一篇】
【相关文章】
  • Oracle 升级服务
  • oracle基本概念和术语(转)
  • Integrity Constraints [Oracle]
  • Oracle's V$ Views
  • Oracle's x$ Tables
  • 用JAVA连接ORACLE数据库的问题
  • Oracle9i for SUN Solaris installation.
  • 在linux上面安装oracle10g笔记
  • oracle10g for linux 安装
  • SAP AND ORACLE
  • 【随机文章】
  • Dynamips安装手册
  • 分层结构中查询接口的设计
  • *** The Linux MTD, JFFS HOWTO ***
  • 高端技术:椭圆曲线密码体制与电子政务
  • SQL SERVER 2k SP2 12命令的溢出攻击
  • 使用证书对XML文档进行加解密
  • 为窗体对象设置属性
  • Director生成文件减肥技巧
  • 如何提高光传输系统极化模式色散的测量精确性
  • VBScript Date 函数
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.