核心灾备环境磁盘扩容方案
一、背景
目前核心灾备环境需要进行扩容,由于灾备环境虚拟机只能挂载16块数据盘,且已到挂盘上限,为了保证核心库灾备环境数据同步正常,需对核心灾备环境磁盘进行优化改造。
二、扩容方案
更改归档存储位置到DATADG磁盘组中,将FRA磁盘组中的磁盘扩容为大盘,再将大盘拆分成2T的小盘,再将小盘加入到磁盘组DATADG中,从而解决磁盘扩容的问题,具体步骤如下:
1. 更改归档目录设置
alter system set DB_RECOVERY_FILE_DEST='+DATADG' scope='both';
2. 更改控制文件位置
create pfile=’/tmp/pfile.ora’ from spfile;
vim /tmp/pfile.ora
startup nomount pfile=/tmp/pfile.ora’;
create spfile from pfile=/tmp/pfile.ora’
shutdown immediate;
3. 移动fra磁盘组数据到datadg磁盘组
Mv FRA/DCCOREDB/AUTOBACKUP/ DATADG/DCCOREDB
Mv FRA/DCCOREDB/ONLINELOG/ DATADG/DCCOREDB
Mv FRA/DCCOREDB/CONTROLFILE/ DATADG/DCCOREDB
Mv FRA/DCCOREDB/ARCHIVELOG/ DATADG/DCCOREDB
4. 更改日志组名称
startup mount;
alter databases rename file '+FRA/dccoredb/onlinelog/group_11.1406.1048879359' to '+DATADG/dccoredb/onlinelog/group_11.1406.1048879359' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_12.1407.1048879375' to '+DATADG/dccoredb/onlinelog/group_12.1407.1048879375' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_13.1408.1048879393' to '+DATADG/dccoredb/onlinelog/group_13.1408.1048879393' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_14.1409.1048879407' to '+DATADG/dccoredb/onlinelog/group_14.1409.1048879407' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_5.1400.1048879259' to '+DATADG/dccoredb/onlinelog/group_5.1400.1048879259' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_6.1401.1048879277' to '+DATADG/dccoredb/onlinelog/group_6.1401.1048879277' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_7.1402.1048879295' to '+DATADG/dccoredb/onlinelog/group_7.1402.1048879295' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_8.1403.1048879313' to '+DATADG/dccoredb/onlinelog/group_8.1403.1048879313' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_15.1410.1048879427' to '+DATADG/dccoredb/onlinelog/group_15.1410.1048879427' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_16.1411.1048879445' to '+DATADG/dccoredb/onlinelog/group_16.1411.1048879445' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_17.1412.1048879459' to '+DATADG/dccoredb/onlinelog/group_17.1412.1048879459' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_18.1413.1048879477' to '+DATADG/dccoredb/onlinelog/group_18.1413.1048879477' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_19.1414.1048879495' to '+DATADG/dccoredb/onlinelog/group_19.1414.1048879495' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_20.1415.1048879513' to '+DATADG/dccoredb/onlinelog/group_20.1415.1048879513' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_1.1396.1048879197' to '+DATADG/dccoredb/onlinelog/group_1.1396.1048879197' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_2.1397.1048879213' to '+DATADG/dccoredb/onlinelog/group_2.1397.1048879213' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_3.1398.1048879231' to '+DATADG/dccoredb/onlinelog/group_3.1398.1048879231' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_4.1399.1048879245' to '+DATADG/dccoredb/onlinelog/group_4.1399.1048879245' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_9.1404.1048879327' to '+DATADG/dccoredb/onlinelog/group_9.1404.1048879327' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_10.1405.1048879343' to '+DATADG/dccoredb/onlinelog/group_10.1405.1048879343' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_21.279.1048462565' to '+DATADG/dccoredb/onlinelog/group_21.279.1048462565' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_22.905.1049529129' to '+DATADG/dccoredb/onlinelog/group_22.905.1049529129' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_23.282.1048462599' to '+DATADG/dccoredb/onlinelog/group_23.282.1048462599' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_24.283.1048462599' to '+DATADG/dccoredb/onlinelog/group_24.283.1048462599' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_25.286.1048462637' to '+DATADG/dccoredb/onlinelog/group_25.286.1048462637' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_26.287.1048462637' to '+DATADG/dccoredb/onlinelog/group_26.287.1048462637' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_27.289.1048462671' to '+DATADG/dccoredb/onlinelog/group_27.289.1048462671' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_28.290.1048462671' to '+DATADG/dccoredb/onlinelog/group_28.290.1048462671' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_29.292.1048462703' to '+DATADG/dccoredb/onlinelog/group_29.292.1048462703' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_30.293.1048462703' to '+DATADG/dccoredb/onlinelog/group_30.293.1048462703' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_31.295.1048462735' to '+DATADG/dccoredb/onlinelog/group_31.295.1048462735' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_32.1127.1049529257' to '+DATADG/dccoredb/onlinelog/group_32.1127.1049529257' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_33.278.1048462565' to '+DATADG/dccoredb/onlinelog/group_33.278.1048462565' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_34.281.1048462599' to '+DATADG/dccoredb/onlinelog/group_34.281.1048462599' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_35.285.1048462637' to '+DATADG/dccoredb/onlinelog/group_35.285.1048462637' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_36.288.1048462669' to '+DATADG/dccoredb/onlinelog/group_36.288.1048462669' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_37.291.1048462701' to '+DATADG/dccoredb/onlinelog/group_37.291.1048462701' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_38.294.1048462733' to '+DATADG/dccoredb/onlinelog/group_38.294.1048462733' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_39.296.1048462735' to '+DATADG/dccoredb/onlinelog/group_39.296.1048462735' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_40.297.1048462765' to '+DATADG/dccoredb/onlinelog/group_40.297.1048462765' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_41.298.1048462767' to '+DATADG/dccoredb/onlinelog/group_41.298.1048462767' ;
alter databases rename file '+FRA/dccoredb/onlinelog/group_42.277.1048462565' to '+DATADG/dccoredb/onlinelog/group_42.277.1048462565' ;
Alter database open;
5. 删除FRA磁盘组
删除磁盘组磁盘
select group_number,mount_status,name,path from v$asm_disk;
alter diskgroup fra drop disk FRA_0000;
删除磁盘组fra
alter diskgroup fra dismount;
drop diskgroup fra;
---若无法删除,采取强制删除 drop diskgroup fra force including contents ;
6. 恢复fra磁盘至最初状态
raw /dev/raw/raw1 0 0
7. 扩容磁盘/dev/vdb
在灾备环境平台扩容磁盘到4T
8. 拆分磁盘
parted /dev/vdb
mklable gpt
mkpart primary 0G 2048G
mkpart primary 2048G 4096G
9. 磁盘映射
[root@dccoredb ~]# cat /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
#raw /dev/raw/raw1 /dev/vdb
raw /dev/raw/raw2 /dev/vdc
raw /dev/raw/raw3 /dev/vdd
raw /dev/raw/raw4 /dev/vde
raw /dev/raw/raw5 /dev/vdf
raw /dev/raw/raw6 /dev/vdg
raw /dev/raw/raw7 /dev/vdh
raw /dev/raw/raw8 /dev/vdi
raw /dev/raw/raw9 /dev/vdj
raw /dev/raw/raw10 /dev/vdk
raw /dev/raw/raw11 /dev/vdl
raw /dev/raw/raw12 /dev/vdm
raw /dev/raw/raw13 /dev/vdn
raw /dev/raw/raw14 /dev/vdp
raw /dev/raw/raw15 /dev/vdq
raw /dev/raw/raw16 /dev/vdr
raw /dev/raw/raw17 /dev/vdb1
raw /dev/raw/raw18 /dev/vdb2
chown grid:asmadmin /dev/raw/raw*
chmod 660 /dev/raw/raw*
sleep 2
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
10. 加入磁盘组
alter diskgroup datadg add disk '/dev/raw/raw16';
alter diskgroup datadg add disk '/dev/raw/raw17';
11. 验证磁盘扩容
Select * from v$asm_diskgorup;




