oracle asm数据库从一个raid10磁阵迁移到raid5磁阵

在实施oracle asm安装时,由于部门协调流程的问题,磁阵8.5T的raid5磁阵没有看到,只有本地机器的6T raid10磁阵

在需求紧急的情况下,就安装在了3T raid10的磁阵上,3T做成了2个分区 raw1 raw2

 

1.查看所有raw

[root@localhost raw]# ls -l
total 0
crw-rw---- 1 grid oinstall 162,  1 Apr  9 14:49 raw1
crw-rw---- 1 grid oinstall 162, 12 Apr  9 14:49 raw12
crw-rw---- 1 grid oinstall 162, 13 Apr  9 14:49 raw13
crw-rw---- 1 grid oinstall 162, 14 Apr  9 14:49 raw14
crw-rw---- 1 grid oinstall 162, 15 Apr  9 14:49 raw15
crw-rw---- 1 grid oinstall 162, 16 Apr  9 14:49 raw16
crw-rw---- 1 grid oinstall 162, 17 Apr  9 14:49 raw17
crw-rw---- 1 grid oinstall 162,  2 Apr  9 14:49 raw2
[root@localhost raw]# ls
raw1  raw12  raw13  raw14  raw15  raw16  raw17  raw2


2.查看现在的磁盘group

SQL> select name,state,total_mb,free_mb from v$asm_diskgroup;

NAME							     STATE		      TOTAL_MB	  FREE_MB
------------------------------------------------------------ ---------------------- ---------- ----------
DG01DATA						     MOUNTED		       2097148	  1034192

SQL> exit


3.增加后查看情况

SQL>  CREATE DISKGROUP DG02DATA  EXTERNAL REDUNDANCY DISK                                                                                                                                                                     
  2  '/dev/raw/raw12','/dev/raw/raw13','/dev/raw/raw14','/dev/raw/raw15','/dev/raw/raw16','/dev/raw/raw17'                                                                    
ATTRIBUTE 'compatible.asm'='11.2.0.0.0','au_size'='64M','COMPATIBLE.RDBMS'='11.2.0.0.0';  3  

Diskgroup created.

SQL> select name,state,total_mb,free_mb from v$asm_diskgroup;

NAME
------------------------------------------------------------
STATE			 TOTAL_MB    FREE_MB
---------------------- ---------- ----------
DG01DATA
MOUNTED 		  2097148    1034192

DG02DATA
MOUNTED 		  9148800    9147520


SQL> set lines 200
SQL> 
SQL>  select name,state,total_mb,free_mb from v$asm_diskgroup;

NAME							     STATE		      TOTAL_MB	  FREE_MB
------------------------------------------------------------ ---------------------- ---------- ----------
DG01DATA						     MOUNTED		       2097148	  1034192
DG02DATA						     MOUNTED		       9148800	  9147520

SQL> exit


 

4.下面做好,迁移的准备工作,从nolog状态加载数据库,停库

[root@localhost raw]# su - oracle
[oracle@localhost ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 4月 9 15:09:38 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.


连接到: 
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options

SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> exit


5.切换控制文件

[oracle@localhost ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 4月 9 15:19:27 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL> conn / as sysdba
已连接到空闲例程。
SQL> startup
ORACLE 例程已经启动。

Total System Global Area 2.6724E+10 bytes
Fixed Size		    2213936 bytes
Variable Size		 2.4159E+10 bytes
Database Buffers	 2415919104 bytes
Redo Buffers		  146370560 bytes
数据库装载完毕。
数据库已经打开。
SQL> select name,state from v$asm_diskgroup;

NAME			       STATE
------------------------------ -----------
DG01DATA		       CONNECTED
DG02DATA		       MOUNTED

SQL> show parameter control

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
control_file_record_keep_time	     integer	 7
control_files			     string	 +DG01DATA/orcl/controlfile/cur
						 rent.256.806581591, +DG01DATA/
						 orcl/controlfile/current.257.8
						 06581593
control_management_pack_access	     string	 DIAGNOSTIC+TUNING
SQL> ALTER SYSTEM SET CONTROL_FILES='+DG02DATA'  SCOPE=SPFILE;

系统已更改。

SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST='+DG02DATA' SCOPE=SPFILE;

系统已更改。

SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> exit


6.利用rman,还原控制文件到asm磁盘组,启动数据库mouted状态。

[oracle@localhost ~]$ rman target /

恢复管理器: Release 11.2.0.1.0 - Production on 星期二 4月 9 15:24:36 2013

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

已连接到目标数据库 (未启动)

RMAN> startup nomount

Oracle 实例已启动

系统全局区域总计   26723696640 字节

Fixed Size                     2213936 字节
Variable Size              24696063952 字节
Database Buffers            1879048192 字节
Redo Buffers                 146370560 字节

RMAN> 

RMAN> RESTORE CONTROLFILE FROM  '+DG01DATA/orcl/controlfile/current.256.806581591';

启动 restore 于 09-4月 -13
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=350 设备类型=DISK

通道 ORA_DISK_1: 已复制控制文件副本
输出文件名=+DG02DATA/orcl/controlfile/current.256.812302113
完成 restore 于 09-4月 -13

RMAN>  ALTER DATABASE MOUNT;

数据库已装载
释放的通道: ORA_DISK_1


7.用rman实现数据库copy到asm 目标磁盘组

RMAN> BACKUP AS COPY DATABASE FORMAT '+DG02DATA';

启动 backup 于 09-4月 -13 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=350 设备类型=DISK 通道 ORA_DISK_1: 启动数据文件副本 输入数据文件: 文件号=00005 名称=+DG01DATA/orcl/datafile/tbr5data_uni_default.270.806594421 输出文件名=+DG02DATA/orcl/datafile/tbr5data_uni_default.257.812302191 标记=TAG20130409T152949 RECID=1 STAMP=812306124 通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 01:05:39 通道 ORA_DISK_1: 启动数据文件副本 输入数据文件: 文件号=00003 名称=+DG01DATA/orcl/datafile/undotbs1.266.806581601 输出文件名=+DG02DATA/orcl/datafile/undotbs1.258.812306131 标记=TAG20130409T152949 RECID=2 STAMP=812306338 通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:03:35 通道 ORA_DISK_1: 启动数据文件副本 输入数据文件: 文件号=00076 名称=+DG01DATA/orcl/datafile/tbr5data_uni_day070.341.806594449 输出文件名=+DG02DATA/orcl/datafile/tbr5data_uni_day070.259.812306347 标记=TAG20130409T152949 RECID=3 STAMP=812306482 通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:02:25 通道 ORA_DISK_1: 启动数据文件副本 输入数据文件: 文件号=00004 名称=+DG01DATA/orcl/datafile/users.268.806581611 输出文件名=+DG02DATA/orcl/datafile/users.260.812306491 标记=TAG20130409T152949 RECID=4 STAMP=812306557 通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:01:15 通道 ORA_DISK_1: 启动数据文件副本


8.第7个步骤,可能需要等待,但是可以计算出需要多长时间。,asmcmd中,统计du  -H 总大小/iostat中 wkb/s的大小=时间(s)

ASMCMD> ls -s 
Block_Size    Blocks         Bytes         Space  Name
     32768     50881    1667268608    1669332992  SYSAUX.265.806581597
     32768     38081    1247838208    1249902592  SYSTEM.264.806581593
     32768    258049    8455749632    8457814016  xxx.272.806594423
     32768      4097     134250496     136314880  xxx.273.806594423

 

9.利用RMAN的SWITCH 命令修改控制文件内数据文件的指针,使其指向新位置

通道 ORA_DISK_1: 正在启动段 1 于 09-4月 -13
通道 ORA_DISK_1: 已完成段 1 于 09-4月 -13
段句柄=+DG02DATA/orcl/backupset/2013_04_09/nnsnf0_tag20130409t152949_0.630.812307491 标记=TAG20130409T152949 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 09-4月 -13

RMAN> SWITCH DATABASE TO COPY;

数据文件 1 已切换成数据文件副本 "+DG02DATA/orcl/datafile/system.274.812307035"
数据文件 2 已切换成数据文件副本 "+DG02DATA/orcl/datafile/sysaux.273.812307019"
数据文件 3 已切换成数据文件副本 "+DG02DATA/orcl/datafile/undotbs1.258.812306131"
数据文件 4 已切换成数据文件副本 "+DG02DATA/orcl/datafile/users.260.812306491"
数据文件 5 已切换成数据文件副本 "+DG02DATA/orcl/datafile/tbr5data_uni_default.257.812302191"
数据文件 6 已切换成数据文件副本 "+DG02DATA/orcl/datafile/tbr5indx_uni_default.279.812307069"
数据文件 7 已切换成数据文件副本 "+DG02DATA/orcl/datafile/tbr5data_uni_day001.262.812306611"
数据文件 8 已切换成数据文件副本 "+DG02DATA/orcl/datafile/tbr5data_uni_day002.280.812307071"


....

 

10.打开数据库

[oracle@localhost ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on 星期二 4月 9 17:07:06 2013

Copyright (c) 1982, 2009, Oracle.  All rights reserved.


连接到: 
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options

SQL> ALTER DATABASE OPEN;
ALTER DATABASE OPEN
*
第 1 行出现错误:
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项


SQL> ALTER DATABASE OPEN NORESETLOGS;

数据库已更改。



 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值