oracle until,linux下oracle rman 复制数据库技术(until cancel不完全恢复)

环境介绍:

rhel5.4 32位 192.168.0.201,ORACLE_SID=orcl

rhel5.4 32位 192.168.0.202,ORACLE_SID=orcl

oracle版本: 11.2.0.1 32位企业版

主库(192.168.0.201)

1、首先在主库上创建测试数据

/*第1步:创建临时表空间  */

create temporary tablespace orcl_temp tempfile '/u01/app/oracle/oradata/orcl/orcl_temp.dbf' size 50m autoextend on next 50m maxsize 2048m extent management local;

/*第2步:创建数据表空间  */

create tablespace orcl_data logging datafile '/u01/app/oracle/oradata/orcl/orcl_data.dbf' size 50m autoextend on next 50m maxsize 2048m extent management local;

/*第3步:创建用户并指定表空间  */

create user orcl identified by orcl default tablespace orcl_data temporary tablespace orcl_temp;

/*第4步:给用户授予权限  */

grant connect,resource,dba to orcl;

登陆刚刚创建的用户orcl

SQL> conn orcl/orcl

Connected.

创建测试表

SQL> create table a(id number,name varchar(10));

SQL> insert into a values(1,'xiao');

SQL> insert into a select * from a;

SQL> select * from a;

ID NAME

---------- ----------

1 xiao

1 xiao

2、通过rman创建备份文件

[oracle@dg1 ~]$mkdir -p /u01/app/oracle/bak

[oracle@dg1 ~]$ rman target /

Recovery Manager: Release 11.2.0.1.0 - Production on Wed May 29 15:09:56 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database: ORCL (DBID=1344401817)

RMAN>

RMAN>backup database format '/u01/app/oracle/bak/%d_%s.bak';

`````````````````````

`````````````````````备份信息--略

`````````````````````

Finished backup at 29-MAY-13

3、复制参数文件到另一台服务器(initorcl.ora)

(如果目录下没有该参数文件,通过create pfile from spfile;创建)

[oracle@dg1 ~]$ cd $ORACLE_HOME/dbs

[oracle@dg1 dbs]$ ls

hc_DBUA0.dat  init.ora      lkORCL     peshm_DBUA0_0  snapcf_orcl.f

hc_orcl.dat   initorcl.ora  orapworcl  peshm_orcl_0   spfileorcl.ora

[oracle@dg1 dbs]$ scp initorcl.ora 192.168.0.202:$ORACLE_HOME/dbs

reverse mapping checking getaddrinfo for bogon failed - POSSIBLE BREAK-IN ATTEMPT!

oracle@192.168.0.202's password:

initorcl.ora                                                                  100% 1395     1.4KB/s   00:00

[oracle@dg1 dbs]$

备数据库(192.168.0.202)

1、首先安装oracle软件,不创建数据库

2、创建相应目录

[oracle@dg2 ~]$ mkdir -p /u01/app/oracle/bak

[oracle@dg2 ~]$ mkdir -p /u01/app/oracle/oradata/orcl

[oracle@dg2 ~]$ mkdir -p /u01/app/oracle/admin/orcl/{adump,bdump,cdump,dpdump,udump,pfile}

[oracle@dg2 ~]$ mkdir -p /u01/app/oracle/archive/orcl

[oracle@dg2 ~]$ mkdir -p /u01/app/oracle/oradata/orcl

[oracle@dg2 ~]$ mkdir -p /u01/app/oracle/flash_recovery_area/orcl

主库复制rman备份的数据文件和归档日志文件 到备库相应目录下(注意:主库和备库目录必须一致)

[oracle@dg1 ~]$ cd /u01/app/oracle/bak

[oracle@dg1 bak]$ scp * 192.168.0.202:/u01/app/oracle/bak/

[oracle@dg1 ~]$ cd /u01/app/oracle/archive/orcl

[oracle@dg1 orcl]$ scp * 192.168.0.202:/u01/app/oracle/archive/orcl/

备库通过rman进行恢复

[oracle@dg2 ~]$ rman target /

Recovery Manager: Release 11.2.0.1.0 - Production on Wed May 29 15:33:11 2013

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database (not started)

RMAN>

RMAN> startup nomount;

Oracle instance started

Total System Global Area     368263168 bytes

Fixed Size                     1336596 bytes

Variable Size                306186988 bytes

Database Buffers              54525952 bytes

Redo Buffers                   6213632 bytes

RMAN>

转储controlfile控制文件(因为默认备份信息全部放在控制文件中)

RMAN> restore controlfile from '/u01/app/oracle/bak/ORCL_27.bak';

Starting restore at 29-MAY-13

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=20 device type=DISK

channel ORA_DISK_1: restoring control file

channel ORA_DISK_1: restore complete, elapsed time: 00:00:01

output file name=/u01/app/oracle/oradata/orcl/control01.ctl

output file name=/u01/app/oracle/flash_recovery_area/orcl/control02.ctl

Finished restore at 29-MAY-13

RMAN> alter database mount;

database mounted

released channel: ORA_DISK_1

查看备份信息

RMAN> list backup of database;

················

·················

·················

转储数据库

RMAN> restore database;

···············

···············

·················

oracle@dg1 ~]$ sqlplus "/as sysdba"

SQL> recover using backup controlfile until cancel;

ORA-00308: cannot open archived log

'/u01/app/oracle/archive/orcl/1_62_816621081.arc'

ORA-27037: unable to obtain file status

Linux Error: 2: No such file or directory

Additional information: 3(可以忽略)

SQL> alter database open resetlogs;

SQL> conn orcl/orcl

Connected.

SQL> select * from a;

ID NAME

---------- ----------

1 xiao

1 xiao

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值