在实施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; 数据库已更改。