Автоматическое управление памятью в Oracle 11g - Проверка дисков

ОГЛАВЛЕНИЕ

Проверка дисков

Одним из наиболее часто встречающихся желаний пользователей ASM, привыкших к традиционному управлению томами, является возможность проверки множество вещей, используя командную строку.  Командная строка ASM (утилита ASMCMD) в значительной степени реализует эту возможность. В Oracle Database 11g некоторые дополнительные команды в приглашении ASMCMD делают чрезвычайно легким управление экземпляром ASM. Одним из таких примеров является создание резервной копии метаданных, которое рассматривалось ранее. Другой примечательной возможностью является команда для проверки дисков, управляемых экземпляром. Это команда lsdsk.

ASMCMD> lsdsk
Path
/dev/raw/raw10
/dev/raw/raw11
/dev/raw/raw13
... snipped ...

Без всяких флагов команда просто перечисляет все диски, доступные в экземпляре. Существует несколько флагов, которые изменяют выходные данные. Наиболее общим является флаг –k, как показано ниже:

ASMCMD> lsdsk -k
Total_MB  Free_MB  OS_MB  Name      Failgroup  Library  Label  UDID  Product  Redund   Path
     103       41    103  DG4_0000  DG4_0000   System                         UNKNOWN  /dev/raw/raw10
     103       41    103  DG5_0000  DG5_0000   System                         UNKNOWN  /dev/raw/raw11
... snipped ...

Другой флаг -s показывает различную статистику дисков, связанную с вводом/выводом:

ASMCMD> lsdsk -s
 Reads   Write  Read_Errs  Write_Errs   Read_time  Write_Time  Bytes_Read  Bytes_Written  Path
207485  207916          0           0  245.820323  159.634398   851251200                 /dev/raw/raw10
207481  207912          0           0  229.996931   144.73954   851234816                 /dev/raw/raw11

Для быстрой проверки состояния дисков можно использовать флаг -p:

ASMCMD> lsdsk -p
Group_Num  Disk_Num      Incarn  Mount_Stat  Header_Stat  Mode_Stat  State   Path
        4         0  3915926174  CACHED      MEMBER       ONLINE     NORMAL  /dev/raw/raw10
        5         0  3915926175  CACHED      MEMBER       ONLINE     NORMAL  /dev/raw/raw11
        6         0  3915926193  CACHED      MEMBER       ONLINE     NORMAL  /dev/raw/raw13

Наконец, флаг  -t показывает информацию, связанную с ремонтами (описывается далее в этой статье):

ASMCMD> lsdsk -t
Create_Date  Mount_Date  Repair_Timer  Path
27-SEP-07    28-SEP-07   0             /dev/raw/raw10
27-SEP-07    28-SEP-07   0             /dev/raw/raw11
28-SEP-07    28-SEP-07   0             /dev/raw/raw13

До настоящего времени опция ASMCMD извлекала значения из различных V$-представлений в экземпляре ASM. Но метаданные хранятся непосредственно на диске. Если экземпляр недоступен, то должен быть способ извлечь эту информацию с дисков. В базе данных Oracle 11g, команда lsdsk имеет флаг "I" (заглавное "I", а не строчное "L"), который извлекает информацию из заголовков дисков, а не из V$-представлений. Вот пример такого использования флага "I" вместе с флагом -k, извлекающего информацию из заголовков дисков.

ASMCMD> lsdsk -Ik
Total_MB  Name      Failgroup  Path
     103  DG4_0000  DG4_0000   /dev/raw/raw10
     103  DG5_0000  DG5_0000   /dev/raw/raw11
     102  DG6_0000  DG6_0000   /dev/raw/raw13

Чтобы просмотреть диски конкретной дисковой группы, скажем, DG1, можно использовать флаг -d, как показано ниже:

ASMCMD> lsdsk -t -d dg1
Create_Date  Mount_Date  Repair_Timer  Path
28-SEP-07    28-SEP-07   0             /dev/raw/raw5

Можно также задать шаблон для дисков:

ASMCMD> lsdsk -t /dev/raw/raw1*
Create_Date  Mount_Date  Repair_Timer  Path
27-SEP-07    28-SEP-07   0             /dev/raw/raw10
27-SEP-07    28-SEP-07   0             /dev/raw/raw11
28-SEP-07    28-SEP-07   0             /dev/raw/raw13
28-SEP-07    05-OCT-07   0             /dev/raw/raw14

При этом показываются только диски, соответствующие шаблону. Наконец, нет необходимости помнить эти опции; команда help покажет все опции:

ASMCMD> help lsdsk
        lsdsk [-ksptcgHI] [-d <diskgroup_name>] [pattern]

Команда  lsdsk предоставляет более передовые возможности управления памятью в мире ASM.