今天在给ASM扩磁盘组的时候发现11.2.0.2上asmcmd中lsdg命令所显示的磁盘组数不正确,现象如下:
Node A lsdg正常: ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 4096 1048576 142976 50596 0 50596 0 Y DATA/ MOUNTED EXTERN N 512 4096 1048576 51200 50742 0 50742 0 N FRA/ Node B lsdg仅显示DATA磁盘组 ASMCMD> lsdg State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 4096 1048576 142976 50596 0 50596 0 Y DATA/ 从Node B节点上ASM实例的动态视图查询显示正常: SQL> select name from v$asm_diskgroup; NAME ------------------------------ DATA FRA ASM diag info: SQL> select sysdate "Date and Time" from dual; Date and Time -------------------- 28-JUN-2011 23:30:27 SQL> SQL> select * from v$asm_diskgroup order by 1; select * from v$asm_disk order by 1, 2, 3; select * from gv$asm_operation order by 1; select * from v$version where banner like '%Database%' order by 1; select * from gv$asm_client order by 1; prompt prompt ASM Disk Groups prompt =============== select group_number "Group" , name "Group Name" , state "State" , type "Type" , total_mb/1024 "Total GB" , free_mb/1024 "Free GB" from v$asm_diskgroup / prompt prompt ASM Disks prompt ============== col "Group" form 999 col "Disk" form 999 col "Header" form a9 col "Mode" form a8 GROUP_NUMBER NAME SECTOR_SIZE BLOCK_SIZE ALLOCATION_UNIT_SIZE STATE TYPE TOTAL_MB FREE_MB HOT_USED_MB COLD_USED_MB REQUIRED_MIRROR_FREE_MB USABLE_FILE_MB OFFLINE_DISKS COMPATIBILITY DATABASE_COMPATIBILITY V ------------ ------------------------------ ----------- ---------- -------------------- --------------- ------- ---------- ---------- ----------- ------------ ----------------------- -------------- ------------- ------------------------------------------------------------ ------------------------------------------------------------ - 0 FRA 0 4096 0 DISMOUNTED 0 0 0 0 0 0 0 0.0.0.0.0 0.0.0.0.0 N 1 DATA 512 4096 1048576 MOUNTED EXTERN 142976 50596 0 92380 0 50596 0 11.2.0.0.0 10.1.0.0.0 Y SQL> col "Redundancy" form a10 col "Failure Group" form a10 col "Path" form a19 select group_number "Group" , disk_number "Disk" , header_status "Header" GROUP_NUMBER DISK_NUMBER COMPOUND_INDEX INCARNATION MOUNT_S HEADER_STATU MODE_ST STATE REDUNDA LIBRARY OS_MB TOTAL_MB FREE_MB HOT_USED_MB COLD_USED_MB NAME FAILGROUP LABEL ------------ ----------- -------------- ----------- ------- ------------ ------- --------------- ------- ---------------------------------------------------------------- ---------- ---------- ---------- ----------- ------------ ------------------------------ ------------------------------ ------------------------------- PATH UDID PRODUCT CREATE_DATE MOUNT_DATE REPAIR_TIMER READS WRITES READ_ERRS WRITE_ERRS READ_TIME WRITE_TIME BYTES_READ BYTES_WRITTEN ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------- -------------------------------- -------------------- -------------------- ------------ ---------- ---------- ---------- ---------- ---------- ---------- ---------- ------------- P HASH_VALUE HOT_READS HOT_WRITES HOT_BYTES_READ HOT_BYTES_WRITTEN COLD_READS COLD_WRITES COLD_BYTES_READ COLD_BYTES_WRITTEN V SECTOR_SIZE FAILGRO - ---------- ---------- ---------- -------------- ----------------- ---------- ----------- --------------- ------------------ - ----------- ------- 0 0 0 3915932260 CLOSED MEMBER ONLINE NORMAL UNKNOWN System 51200 0 0 0 0 /dev/raw/raw8 28-JUN-2011 17:08:16 28-JUN-2011 17:08:25 0 0 N 512 REGULAR 1 0 16777216 3915932274 CACHED MEMBER ONLINE NORMAL UNKNOWN System 8096 8096 2827 0 5269 DATA_0000 DATA_0000 /dev/raw/raw1 29-MAR-2011 22:39:53 31-MAY-2011 06:42:41 0 26 1 0 0 .948212 .001678 1118208 4096 1452020686 0 0 0 0 0 0 0 0 Y 512 REGULAR 1 1 16777217 3915932273 CACHED MEMBER ONLINE NORMAL UNKNOWN System 8096 8096 2861 0 5235 DATA_0001 DATA_0001 /dev/raw/raw2 29-MAR-2011 22:39:53 31-MAY-2011 06:42:41 0 15 0 0 0 .868808 0 1105920 0 559735068 0 0 0 0 0 0 0 0 N 512 REGULAR 1 2 16777218 3915932272 CACHED MEMBER ONLINE NORMAL UNKNOWN System 8096 8096 2859 0 5237 DATA_0002 DATA_0002 /dev/raw/raw3 29-MAR-2011 23:36:28 31-MAY-2011 06:42:41 0 14 0 0 0 .738089 0 57344 0 2179807744 0 0 0 0 0 0 0 0 N 512 REGULAR 1 4 16777220 3915932270 CACHED MEMBER ONLINE NORMAL UNKNOWN System 8192 8192 2896 0 5296 DATA_0004 DATA_0004 /dev/raw/raw5 21-APR-2011 00:57:45 31-MAY-2011 06:42:41 0 14 0 0 0 .738083 0 57344 0 3104258115 0 0 0 0 0 0 0 0 N 512 REGULAR 1 5 16777221 3915932271 CACHED MEMBER ONLINE NORMAL UNKNOWN System 8096 8096 2856 0 5240 DATA_0005 DATA_0005 /dev/raw/raw4 30-MAY-2011 20:36:59 31-MAY-2011 06:42:41 0 15 0 0 0 .911934 0 1105920 0 2075303794 0 0 0 0 0 0 0 0 N 512 REGULAR 1 7 16777223 3915932269 CACHED MEMBER ONLINE NORMAL UNKNOWN System 51200 51200 18149 0 33051 DATA_0007 DATA_0007 /dev/raw/raw6 28-JUN-2011 17:09:22 28-JUN-2011 17:09:22 0 39 5 0 0 .998594 6.022413 159744 20480 , mode_status "Mode" 2166785847 0 0 0 0 18 0 73728 0 N 512 REGULAR 1 8 16777224 3915932268 CACHED MEMBER ONLINE NORMAL UNKNOWN System 51200 51200 18148 0 33052 DATA_0008 DATA_0008 /dev/raw/raw7 28-JUN-2011 17:09:58 28-JUN-2011 17:09:58 0 25 0 0 0 .760427 0 102400 0 1385034587 0 0 0 0 6 0 24576 0 N 512 REGULAR 8 rows selected. SQL> , state "State" , redundancy "Redundancy" , total_mb "Total MB" , free_mb "Free MB" , name "Disk Name" , failgroup "Failure Group" , path "Path" from v$asm_disk order by group_number , disk_number / prompt prompt Instances currently accessing these diskgroups prompt ============================================== no rows selected SQL> BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production SQL> select c.group_number "Group" , g.name "Group Name" , c.instance_name "Instance" INST_ID GROUP_NUMBER INSTANCE_NAME DB_NAME STATUS SOFTWARE_VERSION COMPATIBLE_VERSION ---------- ------------ ---------------------------------------------------------------- -------- ------------ ------------------------------------------------------------ ------------------------------------------------------------ 1 1 +ASM1 +ASM CONNECTED 11.2.0.2.0 11.2.0.2.0 1 2 PROD1 PROD CONNECTED 11.2.0.2.0 11.2.0.0.0 1 1 PROD1 PROD CONNECTED 11.2.0.2.0 11.2.0.0.0 2 1 +ASM2 +ASM CONNECTED 11.2.0.2.0 11.2.0.2.0 SQL> SQL> SQL> SQL> ASM Disk Groups SQL> =============== SQL> SQL> 2 3 4 5 6 7 8 from v$asm_client c , v$asm_diskgroup g where g.group_number=c.group_number / Group Group Name State Type Total GB Free GB ---------- ------------------------- --------------- ------- ---------- ------- 1 DATA MOUNTED EXTERN 139.625 49 0 FRA DISMOUNTED 0 0 SQL> SQL> SQL> ASM Disks SQL> ============== SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> SQL> 2 3 prompt 4 5 6 7 8 9 10 11 12 13 14 15 SQL> prompt Report the Percentage of Imbalance in all Mounted Diskgroups prompt ============================================== select dfail, count(dfail) from ( select disk, count(failgroup) as dfail from x$kfdpartner, v$asm_disk where number_kfdpartner=disk_number and grp=group_number Group Disk Header Mode State Redundancy Total MB Free MB Disk Name Failure Gr Path ----- ---- --------- -------- --------------- ---------- ---------- ---------- ------------------------------ ---------- ------------------- 0 0 MEMBER ONLINE NORMAL UNKNOWN 0 0 /dev/raw/raw8 1 0 MEMBER ONLINE NORMAL UNKNOWN 8096 2827 DATA_0000 DATA_0000 /dev/raw/raw1 1 1 MEMBER ONLINE NORMAL UNKNOWN 8096 2861 DATA_0001 DATA_0001 /dev/raw/raw2 1 2 MEMBER ONLINE NORMAL UNKNOWN 8096 2859 DATA_0002 DATA_0002 /dev/raw/raw3 1 4 MEMBER ONLINE NORMAL UNKNOWN 8192 2896 DATA_0004 DATA_0004 /dev/raw/raw5 1 5 MEMBER ONLINE NORMAL UNKNOWN 8096 2856 DATA_0005 DATA_0005 /dev/raw/raw4 1 7 MEMBER ONLINE NORMAL UNKNOWN 51200 18149 DATA_0007 DATA_0007 /dev/raw/raw6 1 8 MEMBER ONLINE NORMAL UNKNOWN 51200 18148 DATA_0008 DATA_0008 /dev/raw/raw7 8 rows selected. SQL> SQL> SQL> Instances currently accessing these diskgroups SQL> ============================================== SQL> SQL> 2 3 4 5 6 7 group by disk, failgroup ) group by dfail; select g.name as "GROUP", d.name as "DISK", d.failgroup, fcnt, pcnt, decode(pcnt - fcnt, 0, 'MUST', 'SHOULD') as action from Group Group Name Instance ----- ------------------------- ---------------------------------------------------------------- 1 DATA +ASM2 SQL> SQL> SQL> Report the Percentage of Imbalance in all Mounted Diskgroups SQL> ============================================== SQL> 2 3 4 5 6 7 8 (select gnum, DISK1, failgroup, count(failgroup) as fcnt from (select gnum, DISK1 from ( select d.group_number as gnum, disk as disk1, count(distinct failgroup) as dfail from x$kfdpartner, v$asm_disk_stat d where number_kfdpartner=disk_number and grp=d.group_number no rows selected SQL> SQL> 2 3 4 5 6 7 8 9 10 11 and active_kfdpartner=1 12 group by d.group_number, disk 13 ), v$asm_disk_stat 14 where dfail < 3 15 and disk1=disk_number 16 and gnum=group_number), 17 x$kfdpartner, v$asm_disk_stat d where 18 number_kfdpartner=disk_number and grp=d.group_number and grp=gnum 19 and disk1=disk 20 and active_kfdpartner=1 21 group by gnum, disk1, failgroup), 22 (select grp, disk, count(disk) as pcnt from x$kfdpartner where 23 active_kfdpartner=1 group by grp, disk), 24 v$asm_diskgroup_stat g, v$asm_disk_stat d 25 where gnum=grp and gnum=g.group_number and gnum=d.group_number and 26 disk=disk1 and disk=disk_number and 27 ((fcnt = 1 and (pcnt - fcnt) > 3) or ((pcnt - fcnt) = 0)) 28 / no rows selected SQL> SQL> col TYPE form a15 SQL> col FILE_NUMBER form 9999 head FILE_NUM SQL> col GROUP_NUMBER form 9999 head GR_NUM SQL> col GB for 9999.99 SQL> SQL> select GROUP_NUMBER , 2 FILE_NUMBER , 3 COMPOUND_INDEX , 4 INCARNATION , 5 BLOCK_SIZE , 6 BLOCKS , 7 BYTES/1024/1024/1024 GB , 8 TYPE , 9 STRIPED , 10 CREATION_DATE , 11 MODIFICATION_DATE 12 from v$asm_file 13 where TYPE != 'ARCHIVELOG' 14 / GR_NUM FILE_NUM COMPOUND_INDEX INCARNATION BLOCK_SIZE BLOCKS GB TYPE STRIPE CREATION_DATE MODIFICATION_DATE ------ -------- -------------- ----------- ---------- ---------- -------- --------------- ------ -------------------- -------------------- 1 253 16777469 747096005 512 3 .00 ASMPARAMETERFIL COARSE 29-MAR-2011 22:40:05 29-MAR-2011 22:00:00 E 1 255 16777471 747096007 4096 66591 .25 OCRFILE COARSE 29-MAR-2011 22:40:07 28-JUN-2011 19:00:00 1 256 16777472 747100091 8192 116481 .89 DATAFILE COARSE 29-MAR-2011 23:48:10 28-JUN-2011 18:00:00 1 257 16777473 747100091 8192 122881 .94 DATAFILE COARSE 29-MAR-2011 23:48:11 28-JUN-2011 18:00:00 1 258 16777474 747100093 8192 78721 .60 DATAFILE COARSE 29-MAR-2011 23:48:12 28-JUN-2011 18:00:00 1 259 16777475 747100093 8192 883201 6.74 DATAFILE COARSE 29-MAR-2011 23:48:12 28-JUN-2011 18:00:00 1 260 16777476 747100215 16384 1545 .02 CONTROLFILE FINE 29-MAR-2011 23:50:14 28-JUN-2011 19:00:00 1 261 16777477 747100215 16384 1545 .02 CONTROLFILE FINE 29-MAR-2011 23:50:14 28-JUN-2011 19:00:00 1 262 16777478 747100217 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:50:16 28-JUN-2011 22:00:00 1 263 16777479 747100219 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:50:18 28-JUN-2011 22:00:00 1 264 16777480 747100219 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:50:19 28-JUN-2011 20:00:00 1 265 16777481 747100223 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:50:22 28-JUN-2011 20:00:00 1 266 16777482 747100227 8192 1889537 14.42 TEMPFILE COARSE 29-MAR-2011 23:50:27 28-JUN-2011 23:00:00 1 267 16777483 747100231 8192 44241 .34 DATAFILE COARSE 29-MAR-2011 23:50:31 28-JUN-2011 19:00:00 1 268 16777484 747100469 8192 144001 1.10 DATAFILE COARSE 29-MAR-2011 23:54:29 28-JUN-2011 18:00:00 prompt 1 269 16777485 747100547 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:55:47 28-JUN-2011 19:00:00 1 270 16777486 747100549 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:55:48 28-JUN-2011 19:00:00 1 271 16777487 747100549 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:55:49 28-JUN-2011 19:00:00 1 272 16777488 747100553 512 102401 .05 ONLINELOG COARSE 29-MAR-2011 23:55:52 28-JUN-2011 19:00:00 1 273 16777489 747100553 512 9 .00 PARAMETERFILE COARSE 29-MAR-2011 23:55:53 12-MAY-2011 17:00:00 prompt free ASM disks and their paths 1 274 16777490 754587291 8192 2561 .02 DATAFILE COARSE 23-JUN-2011 15:34:50 28-JUN-2011 18:00:00 1 419 16777635 754281899 4096 91 .00 DUMPSET COARSE 20-JUN-2011 02:44:58 20-JUN-2011 02:00:00 1 657 16777873 755047049 8192 256001 1.95 TEMPFILE COARSE 28-JUN-2011 23:17:28 28-JUN-2011 23:00:00 1 658 16777874 755032881 8192 8171521 62.34 DATAFILE COARSE 28-JUN-2011 19:21:20 28-JUN-2011 22:00:00 24 rows selected. SQL> SQL> SQL> free ASM disks and their paths SQL> prompt =========================== =========================== SQL> select header_status , mode_status, path from V$asm_disk 2 where header_status in ('FORMER','CANDIDATE') 3 / show parameter asm show parameter size show parameter proc show parameter cluster show parameter instance_type show parameter instance_name show parameter pfile show sga spool off no rows selected SQL> SQL> NAME TYPE VALUE ------------------------------------ --------------- ------------------------------ asm_diskgroups string asm_diskstring string /dev/raw/raw* asm_power_limit integer 10 asm_preferred_read_failure_groups string SQL> NAME TYPE VALUE ------------------------------------ --------------- ------------------------------ db_cache_size big integer 0 large_pool_size big integer 12M max_dump_file_size string unlimited sga_max_size big integer 272M shared_pool_reserved_size big integer 7969177 shared_pool_size big integer 0 sort_area_size integer 65536 workarea_size_policy string AUTO SQL> NAME TYPE VALUE ------------------------------------ --------------- ------------------------------ processes integer 100 SQL> NAME TYPE VALUE ------------------------------------ --------------- ------------------------------ cluster_database boolean TRUE cluster_database_instances integer 4 cluster_interconnects string SQL> NAME TYPE VALUE ------------------------------------ --------------- ------------------------------ instance_type string asm SQL> NAME TYPE VALUE ------------------------------------ --------------- ------------------------------ instance_name string +ASM2 SQL> SQL> NAME TYPE VALUE ------------------------------------ --------------- ------------------------------ spfile string +DATA/rh-cluster/asmparameterf ile/registry.253.747096005 SQL> SQL> Total System Global Area 283930624 bytes Fixed Size 2225792 bytes Variable Size 256539008 bytes ASM Cache 25165824 bytes
原来是因为lsdg只列出已经mount的diskgroup,因为在Node B上FRA磁盘组没有mount所以不被列出,我本来以为是Bug造成的。 感谢Liqin Zhang网友的指出。
本文转自maclean_007 51CTO博客,原文链接:http://blog.51cto.com/maclean/1277834