搜档网
当前位置:搜档网 › rac转单机方案

rac转单机方案

rac转单机方案
rac转单机方案

●创建与rac主机相同的目录

如/backup/rmanbak/level0/20120209010001/4

都是在压缩包所在的目录下tar -cvf oracle0208.tar oracle tar -xvf oracle0113.tar

●传输rac上的备份集到单机上

节点2上的备份包含数据文件及归档的备份集

scp dblv0_731_1_774752412 root@10.0.2.16:/backup/rmanbak/level0/20120209010001/4

scp dblv0_732_1_774752412 root@10.0.2.16:/backup/rmanbak/level0/20120209010001/4

scp dblv0_733_1_774755639 root@10.0.2.16:/backup/rmanbak/level0/20120209010001/4 过程如下:文件大致需要传输6分钟

节点1上传输控制文件的备份在(注意不是节点2上的控制文件的备份)

测试机上接收到的备份集

注意更改这些文件的属性chown -R oracle:dba *

*.user_dump_dest='/app/oracle/admin/orcl/udump'

测试机上启动实例orcl,并开始恢复数据文件

修改profile 改正ORACLE_SID=orcl; export ORACLE_SID

使ORACLE_SID=orcl进入到该orcl的实例,以pfile启动的

进入到rman中

注意应该是

restore controlfile from '/backup/rmanbak/level0/20120209010001/4/controlfile_c-1129995432-20120209-01';

使其进入mount状态

查看数据文件

一些命令的查看设置export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'

list backup summary;

RMAN> list backup of archivelog all summary;

RMAN> list backup of archivelog all; 注意只有516和518备份集中有2月9日备份的归档

注意恢复的时候可以用RMAN> restore database preview summary;这个命令的速度很快!

Restore过程,为了加快速度,所以使用了4个通道。本次开始的时间是11:37分。耗时约2小时run{

allocate channel c1 device type disk;

allocate channel c2 device type disk;

allocate channel c3 device type disk;

allocate channel c4 device type disk;

set newname for datafile 1 to '/oradata/orcl/system01.dbf';

set newname for datafile 2 to '/oradata/orcl/user02.dbf';

set newname for datafile 3 to '/oradata/orcl/sysaux01.dbf';

set newname for datafile 4 to '/oradata/orcl/users01.dbf';

set newname for datafile 5 to '/oradata/orcl/geostk_detail01.dbf'; set newname for datafile 6 to '/oradata/orcl/geo200801.dbf';

set newname for datafile 7 to '/oradata/orcl/databxstkmdtl02.dbf'; set newname for datafile 8 to '/oradata/orcl/geo2008index03.dbf'; set newname for datafile 9 to '/oradata/orcl/geo200805.dbf';

set newname for datafile 10 to '/oradata/orcl/databxsp01.dbf';

set newname for datafile 11 to '/oradata/orcl/databxbatch01.dbf'; set newname for datafile 12 to '/oradata/orcl/databxrob01.dbf';

set newname for datafile 13 to '/oradata/orcl/databxstkdtl01.dbf'; set newname for datafile 14 to '/oradata/orcl/databxaccdtl01.dbf'; set newname for datafile 15 to '/oradata/orcl/databxstkmdtl01.dbf'; set newname for datafile 16 to '/oradata/orcl/bxbb01.dbf';

set newname for datafile 17 to '/oradata/orcl/bxbb02.dbf';

set newname for datafile 18 to '/oradata/orcl/geo200802.dbf';

set newname for datafile 19 to '/oradata/orcl/geo200803.dbf';

set newname for datafile 20 to '/oradata/orcl/geo2008index01.dbf'; set newname for datafile 21 to '/oradata/orcl/geo2008index02.dbf'; set newname for datafile 22 to '/oradata/orcl/undotbs02.dbf';

set newname for datafile 24 to '/oradata/orcl/geo200804.dbf';

set newname for datafile 25 to '/oradata/orcl/benetz_todo01.dbf'; set newname for datafile 29 to '/oradata/orcl/undotbs1.dbf';

set newname for datafile 30 to '/oradata/orcl/undotbs2.dbf'; restore database;

switch datafile all;

release channel c1;

release channel c2;

release channel c3;

release channel c4;}

关于归档

在list backup of archivelog all ;中可以看到

BS Key 518中有2月9日备份的归档---- 这是1机的归档备份

1 1430 93027986917 2012-02-09 01:24:13 93028096781 2012-02-09 02:48:24

1 1431 93028096781 2012-02-09 02:48:24 93028097147 2012-02-09 02:48:48

BS Key 516中有2月9日备份的归档----这是2机的归档备份

2 744 9302809678

3 2012-02-09 02:47:01 93028097108 2012-02-09 02:47:23

根据上面的可以看到(1,1431,93028097147);(2,744,93028097108)所以选择2恢复RMAN> run{

set until sequence 745 thread 2;

recover database;

}

在SQL> select THREAD#,SEQUENCE#,NEXT_CHANGE#,name from v$archived_log 中查到

为了完全恢复,则不使用上面的until了。

看节点1下的归档

为了最大限度的恢复scp 1_143*.dbf root@10.0.2.16:/archive/orcl

scp 1_144*.dbf root@10.0.2.16:/archive/orcl将2.9日备份时间后的所有归档都考过了

恢复完后,我建议先备份恢复出来的数据文件夹

然后用sqlplus 的recover 进行恢复

此时不能打开的!

alter database rename file '+DG_DATA/orcl/onlinelog/redo06.log'to '/oradata/chunjierac/redo06.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo07.log'to '/oradata/chunjierac/redo07.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo01.log'to '/oradata/chunjierac/redo01.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo02.log'to '/oradata/chunjierac/redo02.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo03.log'to '/oradata/chunjierac/redo03.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo04.log'to '/oradata/chunjierac/redo04.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo05.log'to '/oradata/chunjierac/redo05.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo8.log' to '/oradata/chunjierac/redo8.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo9.log' to '/oradata/chunjierac/redo9.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo10.log'to '/oradata/chunjierac/redo10.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo11.log'to '/oradata/chunjierac/redo11.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo12.log'to '/oradata/chunjierac/redo12.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo13.log'to '/oradata/chunjierac/redo13.log'; alter database rename file '+DG_DATA/orcl/onlinelog/redo14.log'to '/oradata/chunjierac/redo14.log'; 查看下

SELECT a.group#, a.member, b.bytes FROM v$logfile a, v$log b WHERE a.group# = b.group#;

后续操作

SQL> select THREAD#, STATUS, ENABLED from v$thread;

SQL> alter database disable thread 2;

SQL> select group# from v$log where THREAD#=2;

使用SQL> alter database drop logfile group **** 或者SQL> alter database clear unarchived logfile group 9;

SQL> select group#,member from v$logfile;

对undo 的处理:它的redo比较特别,一般的都是UNDOTBS2 和UNDOTBS1

SQL> drop tablespace UNDOTBS2 including contents and datafiles;

SQL>select tablespace_name from dba_tablespaces where contents='UNDO';

对temp的处理:

SQL> select name from v$tempfile;

NAME

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

+DG_DATA/orcl/tempfile/temp02.dbf

SQL> select tablespace_name from dba_tablespaces where contents='TEMPORARY'; TABLESPACE_NAME

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

TEMP

SQL> create temporary tablespace TEMP1 tempfile '/oradata/****/temp01.dbf' size 100M autoextend off;

Tablespace created.

SQL> alter database default temporary tablespace TEMP1;

Database altered.

SQL> drop tablespace TEMP including contents and datafiles;

Tablespace dropped.

SQL> select name from v$tempfile;

NAME

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

/oradata/chunjierac/temp01.dbf

监听配置

orcl =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = dg02)(PORT = 1521)) (CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

相关主题