Смотрим статус ASM дисков в ORACLE DATABASE.
Статус дисков через SQL
- Использование ASM дисков
SELECT name, free_mb, total_mb, free_mb/total_mb*100 as percentage FROM v$asm_diskgroup;
DATA 426 592 614 400 69.4322917
FRA 197 112 201 728 97.7117703
- Статус дисков с названием устройств
select DISK_NUMBER,MOUNT_STATUS,HEADER_STATUS,MODE_STATUS,STATE, PATH FROM V$ASM_DISK;
0 CACHED MEMBER ONLINE NORMAL /dev/rhdisk112
3 CACHED MEMBER ONLINE NORMAL /dev/rhdisk114
2 CACHED MEMBER ONLINE NORMAL /dev/rhdisk116
5 CACHED MEMBER ONLINE NORMAL /dev/rhdisk122
4 CACHED MEMBER ONLINE NORMAL /dev/rhdisk124
0 MISSING UNKNOWN OFFLINE FORCING
7 CLOSED FOREIGN ONLINE NORMAL /dev/rhdisk127
3 CLOSED FOREIGN ONLINE NORMAL /dev/rhdisk117
0 CLOSED MEMBER ONLINE NORMAL /dev/rhdisk126
Видим, что один диск у нас в статусе OFFLINE.
- Статус дисков вместе с FAILGROUP
set pagesize 1000
set linesize 1000
col PATH for a15
col DG_NAME for a15
col DG_STATE for a10
col FAILGROUP for a10
select dg.name dg_name, dg.state dg_state, dg.type, d.disk_number dsk_no, d.path, d.mount_status, d.FAILGROUP, d.state from v$asm_diskgroup dg, v$asm_disk d where dg.group_number=d.group_number order by dg_name, dsk_no;
DG_NAME DG_STATE TYPE DSK_NO PATH MOUNT_S FAILGROUP STATE
--------------- ---------- ------ ---------- --------------- ------- ---------- --------
DATA CONNECTED NORMAL 0 /dev/rhdisk112 CACHED DATA_DS01 NORMAL
DATA CONNECTED NORMAL 3 /dev/rhdisk114 CACHED DATA_DS01 NORMAL
DATA CONNECTED NORMAL 4 /dev/rhdisk124 CACHED DATA_0004 NORMAL
DATA CONNECTED NORMAL 5 /dev/rhdisk122 CACHED DATA_0005 NORMAL
FRA CONNECTED NORMAL 0 MISSING FRA_0000 FORCING
FRA CONNECTED NORMAL 2 /dev/rhdisk116 CACHED FRA_0116 NORMAL
Видим, что один диск в Data Group(DG) FRA у нас в статусе OFFLINE.
У FRA только одна FAILGROUP и выход второго диска полностью отключит FRA.
- Типы избыточности(redundancy) и расслоение шаблонов для DG
SELECT dg.name AS diskgroup, t.name, t.stripe, t.redundancy, t.primary_region, t.mirror_region
redundancy:
FROM V$ASM_DISKGROUP dg, V$ASM_TEMPLATE t
WHERE dg.group_number = t.group_number and dg.name = 'FRA' ORDER BY t.name;
DISKGROUP NAME STRIPE REDUND PRIM MIRR
------------------------------ ------------------------------ ------ ------ ---- ----
FRA CONTROLFILE FINE HIGH COLD COLD
FRA DATAFILE COARSE MIRROR COLD COLD
External Redundancy — Unprotected
Normal Redundancy — 2-way mirror
High Redundancy — 3-way mirror
stripe:
Крупное (coarse) расслоение использует размер фрагмента в 1 Мбайт.
Мелкое (fine) расслоение использует размер фрагмента в 128 Кбайт.
- Статус дисков и названием диска
SELECT SUBSTR(d.name,1,16) AS asmdisk, d.mount_status, d.state,
dg.name AS diskgroup FROM V$ASM_DISKGROUP dg, V$ASM_DISK d
WHERE dg.group_number = d.group_number;
ASMDISK MOUNT_S STATE DISKGROUP
---------------------------------------------------------------- ------- -------- ------------------------------
DATA_0112 CACHED NORMAL DATA
DATA_0114 CACHED NORMAL DATA
FRA_0116 CACHED NORMAL FRA
DATA_0005 CACHED NORMAL DATA
DATA_0004 CACHED NORMAL DATA
_DROPPED_0000_FR MISSING FORCING FRA
Статус дисков через ASMCMD
- Подключаемся через grid user
su - grid
asmcmd
- Использование DG
lsdg
State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED NORMAL N 512 4096 8388608 614400 426592 307200 59696 0 N DATA/
MOUNTED NORMAL N 512 4096 8388608 201728 196736 0 98368 1 N FRA/
- Статус дисков
lsdsk -p -G FRA /dev/rhdisk*
Group_Num Disk_Num Incarn Mount_Stat Header_Stat Mode_Stat State Path
2 2 3469466706 CACHED MEMBER ONLINE NORMAL /dev/rhdisk116
Видим, что во FRA только один диск
- Временные показатели DG
lsdsk -t -G FRA
Create_Date Mount_Date Repair_Timer Path
30-OCT-14 21-SEP-15 0
15-OCT-14 04-DEC-17 0 /dev/rhdisk116
Видим, что один диск отсутствует