When a LUN is expanded, unable to resize ASM disks online
When a LUN is expanded, unable to resize ASM disk online. However, able to resize the ASM disk after dismounting/remounting the ASM diskgroup or restarting the ASM instance. No warnings are noticed in the Operating System while increasing the LUN. The below error message is noticed in the ASM alert log file.
alert_ASM.log
===============
Wed Mar 18 12:24:36 2015
SQL> alter diskgroup VRVLT_DBS resize disk VRVLT_DBS_0000 size 20g rebalance power 9
NOTE: requesting all-instance membership refresh for group=2
ERROR: ORA-15057 signalled during resize of diskgroup VRVLT_DBS
Wed Mar 18 12:24:36 2015
NOTE: membership refresh pending for group 2/0x2c287964 (VRVLT_DBS)
Wed Mar 18 12:24:39 2015
GMON querying group 2 at 32 for pid 13, osid 5671
SUCCESS: refreshed membership for 2/0x2c287964 (VRVLT_DBS)
ORA-15032: not all alterations performed ================>>>>>>
ORA-15057: specified size of 20480 MB is larger than actual size of 20464 MB
[root@vrvltdb ~]# ls -l /dev/oracleasm/disks
total 0
brw-rw----. 1 oracle dba 8, 193 Mar 31 13:49 VRVLT_DAT_0000 ---> Major Number=8,Minor Number=193
brw-rw----. 1 oracle dba 8, 209 Mar 31 13:50 VRVLT_DAT_0001 ---> Major Number=8,Minor Number=209
brw-rw----. 1 oracle dba 8, 177 Mar 31 13:50 VRVLT_DBS_0000 ---> Major Number=8,Minor Number=177
[root@vrvltdb ~]# cat /proc/partitions
major minor #blocks name
8 0 135266304 sda
8 1 512000 sda1
8 2 66595840 sda2
8 16 1610612736 sdb
8 32 536870912 sdc
8 96 188743680 sdg
8 176 121634816 sdl ------> This is much larger than associated the partitioned device of sdl1
8 177 20955136 sdl1 -----> VRVLT_DBS_0000 ---> Major Number=8,Minor Number=177 ----> underlying physical device (sd*) -----> about 20G ----> ORA-15057: specified size of 20480 MB is larger than actual size of 20464 MB
8 64 7340032 sde
8 48 33554432 sdd
8 80 16777216 sdf
8 144 25165824 sdj
8 112 33554432 sdh
8 128 25165824 sdi
8 192 838860800 sdm
8 193 838844416 sdm1 ---> VRVLT_DAT_0000 ---> Major Number=8,Minor Number=193 ----> underlying physical device (sd*)
8 208 838860800 sdn
8 209 838844416 sdn1 ---> VRVLT_DAT_0001 ---> Major Number=8,Minor Number=209 ----> underlying physical device (sd*)
8 160 117440512 sdk
252 0 188743680 dm-0 ----> multipathed devices (dm*)
252 1 1610612736 dm-1
252 2 536870912 dm-2
252 3 33554432 dm-3
252 4 117440512 dm-4
252 5 16777216 dm-5
252 6 7340032 dm-6
252 7 25165824 dm-7
252 8 25165824 dm-8
252 9 33554432 dm-9
252 10 838860800 dm-10
252 11 135266304 dm-11
252 12 838860800 dm-12
252 13 121634816 dm-13
252 15 512000 dm-15
252 16 66595840 dm-16
252 18 121618432 dm-18
252 19 2097152 dm-19
252 20 4194304 dm-20
252 21 2097152 dm-21
252 22 2097152 dm-22
252 23 25165824 dm-23
252 24 4194304 dm-24
252 25 6291456 dm-25
252 26 4194304 dm-26
252 27 10485760 dm-27
252 28 5242880 dm-28
252 29 33550336 dm-29
252 30 25161728 dm-30
252 31 25161728 dm-31
252 32 25165824 dm-32
252 33 6291456 dm-33
252 34 1610608640 dm-34
252 35 536866816 dm-35
252 36 33550336 dm-36
252 37 7335936 dm-37
252 38 16773120 dm-38
252 39 188739584 dm-39
252 17 838844416 dm-17
252 14 838844416 dm-14
CAUSE
[root@vrvltdb ~]# cat /etc/sysconfig/oracleasm
#
# This is a configuration file for automatic loading of the Oracle
# Automatic Storage Management library kernel driver. It is generated
# By running /etc/init.d/oracleasm configure. Please use that method
# to modify this file
#
# ORACLEASM_ENABLED: 'true' means to load the driver on boot.
ORACLEASM_ENABLED=true
# ORACLEASM_UID: Default user owning the /dev/oracleasm mount point.
ORACLEASM_UID=oracle
# ORACLEASM_GID: Default group owning the /dev/oracleasm mount point.
ORACLEASM_GID=dba
# ORACLEASM_SCANBOOT: 'true' means scan for ASM disks on boot.
ORACLEASM_SCANBOOT=true
# ORACLEASM_SCANORDER: Matching patterns to order disk scanning
ORACLEASM_SCANORDER="" --------------------------> This parameter should be set to ----> ORACLEASM_SCANORDER="dm" ---> This forces ASM to scan the multipathed device first (dm*)
# ORACLEASM_SCANEXCLUDE: Matching patterns to exclude disks from scan
ORACLEASM_SCANEXCLUDE="" --------------------------> This parameter should be set to ----> ORACLEASM_SCANEXCLUDE="sd" ---> This forces ASM to NOT scan the underlying physical device first (sd*)
# ORACLEASM_USE_LOGICAL_BLOCK_SIZE: 'true' means use the logical block size
# reported by the underlying disk instead of the physical. The default
# is 'false'
ORACLEASM_USE_LOGICAL_BLOCK_SIZE=false
[root@vrvltdb ~]# /sbin/blkid | grep oracleasm
/dev/sdl1: LABEL="VRVLT_DBS_0000" TYPE="oracleasm"
/dev/sdm1: LABEL="VRVLT_DAT_0000" TYPE="oracleasm"
/dev/sdn1: LABEL="VRVLT_DAT_0001" TYPE="oracleasm"
/dev/mapper/VRVLTDB_vrvlt_dbs_0000p1: LABEL="VRVLT_DBS_0000" TYPE="oracleasm" ----> multipathed device mapped to dm* device
/dev/mapper/VRVLTDB_vrvlt_dat_0000p1: LABEL="VRVLT_DAT_0000" TYPE="oracleasm" ----> multipathed device mapped to dm* device
/dev/mapper/VRVLTDB_vrvlt_dat_0001p1: LABEL="VRVLT_DAT_0001" TYPE="oracleasm" ----> multipathed device mapped to dm* device
[root@vrvltdb ~]# /etc/init.d/oracleasm listdisks | xargs /etc/init.d/oracleasm querydisk -d
Disk "VRVLT_DAT_0000" is a valid ASM disk on device [8,193]
Disk "VRVLT_DAT_0001" is a valid ASM disk on device [8,209]
Disk "VRVLT_DBS_0000" is a valid ASM disk on device [8,177]
SOLUTION
Added the following in the /etc/sysconfig/oracleasm file
# ORACLEASM_SCANEXCLUDE: Matching patterns to exclude disks from scan
ORACLEASM_SCANEXCLUDE="sd"
# ORACLEASM_SCANORDER: Matching patterns to order disk scanning
ORACLEASM_SCANORDER="dm"
- 点赞
- 收藏
- 关注作者
评论(0)