Press ESC to close

Oracle ASM Administration with ASMCMD: Essential Commands Every DBA Should Know

Oracle Automatic Storage Management (ASM), Oracle veritabanları için geliştirilmiş yüksek performanslı ve yönetimi kolay bir depolama katmanıdır. ASM sayesinde disk yönetimi, veri dağıtımı, yedeklilik ve I/O optimizasyonu Oracle tarafından otomatik olarak gerçekleştirilir.

ASM ortamlarının yönetiminde kullanılan en önemli araçlardan biri ise ASMCMD (ASM Command Line Utility)’dir. Linux işletim sistemindeki dosya sistemi komutlarına benzer şekilde çalışan ASMCMD, disk gruplarının yönetimi, ASM disklerinin görüntülenmesi, rebalance işlemlerinin takibi, ASM kullanıcılarının yönetimi ve ASM yapılandırmasının incelenmesi gibi birçok operasyonel görevi kolaylaştırır.

Bu yazıda Oracle DBA’ların günlük operasyonlarında sıklıkla ihtiyaç duyacağı ASMCMD komutlarını ve kullanım örneklerini inceleyeceğiz.

ASMCMD Nedir?

ASMCMD;

  • ASM Disk Group yönetimi
  • ASM disklerinin görüntülenmesi
  • Rebalance işlemlerinin takibi
  • ASM Password File yönetimi
  • ASM Template yönetimi
  • Flex ASM kontrolleri
  • ASM kullanıcı yönetimi
  • ASM Filter Driver (AFD) kontrolleri

gibi işlemleri gerçekleştirmek için kullanılan komut satırı aracıdır.

ASM Disk Group’larını Listeleme

ASM üzerinde bulunan tüm disk gruplarını görüntülemek için:

asmcmd
ASMCMD> lsdg
State    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB   Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
MOUNTED  EXTERN  N         512             512   4096  4194304  67108832  19890016                0        19890016              0             N  DATA/
MOUNTED  EXTERN  N         512             512   4096  4194304  16777208  13236856                0        13236856              0             N  RECO/
MOUNTED  NORMAL  N         512             512   4096  4194304     10220      8944             2044            3450              0             Y  SYSTEMDC/

Sistemde bulunan ancak mount edilmemiş disk gruplarını da görmek için:

ASMCMD> lsdg --discovery

--Cluster üzerindeki tüm node’lar üzerinden görüntülemek için:

ASMCMD> lsdg -g --discovery

ASMCMD> lsdg -g
Inst_ID  State    Type    Rebal  Sector  Logical_Sector  Block       AU  Total_MB   Free_MB  Req_mir_free_MB  Usable_file_MB  Offline_disks  Voting_files  Name
      2  MOUNTED  EXTERN  N         512             512   4096  4194304  67108832  19890016                0        19890016              0             N  DATA/
      1  MOUNTED  EXTERN  N         512             512   4096  4194304  67108832  19890016                0        19890016              0             N  DATA/
      2  MOUNTED  EXTERN  N         512             512   4096  4194304  16777208  13228048                0        13228048              0             N  RECO/
      1  MOUNTED  EXTERN  N         512             512   4096  4194304  16777208  13228048                0        13228048              0             N  RECO/
      2  MOUNTED  NORMAL  N         512             512   4096  4194304     10220      8944             2044            3450              0             Y  SYSTEMDC/
      1  MOUNTED  NORMAL  N         512             512   4096  4194304     10220      8944             2044            3450              0             Y  SYSTEMDC/

ASM Disklerini Listeleme

Tüm ASM disklerini görüntülemek için:

ASMCMD> lsdsk -k

ASMCMD> lsdsk
Path
ORCL:DORADOXSG1_DATA01
ORCL:DORADOXSG1_DATA02
ORCL:DORADOXSG1_DATA03
ORCL:DORADOXSG1_DATA04
ORCL:DORADOXSG1_DATA05
ORCL:DORADOXSG1_DATA06
ORCL:DORADOXSG1_DATA07
ORCL:DORADOXSG1_DATA08
ORCL:DORADOXSG1_DATA09
ORCL:DORADOXSG1_DATA10
ORCL:DORADOXSG1_NEWCONFIG01
ORCL:DORADOXSG1_NEWCONFIG02
ORCL:DORADOXSG1_NEWCONFIG03
ORCL:DORADOXSG1_NEWCONFIG04
ORCL:DORADOXSG1_NEWCONFIG05
ASMCMD> lsdsk -k
Total_MB  Free_MB    OS_MB  Name                    Failgroup               Site_Name  Site_GUID                         Site_Status  Failgroup_Type  Library                                                Label                   Failgroup_Label  Site_Label  UDID  Product  Redund   Path
 8388604  2486248  8388606  DORADOXSG1_DATA01       DORADOXSG1_DATA01                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA01                                                   UNKNOWN  ORCL:DORADOXSG1_DATA01
 8388604  2486252  8388606  DORADOXSG1_DATA02       DORADOXSG1_DATA02                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA02                                                   UNKNOWN  ORCL:DORADOXSG1_DATA02
 8388604  2486256  8388606  DORADOXSG1_DATA03       DORADOXSG1_DATA03                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA03                                                   UNKNOWN  ORCL:DORADOXSG1_DATA03
 8388604  2486244  8388606  DORADOXSG1_DATA04       DORADOXSG1_DATA04                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA04                                                   UNKNOWN  ORCL:DORADOXSG1_DATA04
 8388604  2486264  8388606  DORADOXSG1_DATA05       DORADOXSG1_DATA05                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA05                                                   UNKNOWN  ORCL:DORADOXSG1_DATA05
 8388604  2486244  8388606  DORADOXSG1_DATA06       DORADOXSG1_DATA06                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA06                                                   UNKNOWN  ORCL:DORADOXSG1_DATA06
 8388604  2486256  8388606  DORADOXSG1_DATA07       DORADOXSG1_DATA07                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA07                                                   UNKNOWN  ORCL:DORADOXSG1_DATA07
 8388604  2486252  8388606  DORADOXSG1_DATA08       DORADOXSG1_DATA08                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA08                                                   UNKNOWN  ORCL:DORADOXSG1_DATA08
 8388604  6602612  8388606  DORADOXSG1_DATA09       DORADOXSG1_DATA09                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA09                                                   UNKNOWN  ORCL:DORADOXSG1_DATA09
 8388604  6602752  8388606  DORADOXSG1_DATA10       DORADOXSG1_DATA10                  00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_DATA10                                                   UNKNOWN  ORCL:DORADOXSG1_DATA10
    2044     1760     2047  DORADOXSG1_NEWCONFIG01  DORADOXSG1_NEWCONFIG01             00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_NEWCONFIG01                                              UNKNOWN  ORCL:DORADOXSG1_NEWCONFIG01
    2044     1772     2047  DORADOXSG1_NEWCONFIG02  DORADOXSG1_NEWCONFIG02             00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_NEWCONFIG02                                              UNKNOWN  ORCL:DORADOXSG1_NEWCONFIG02
    2044     1788     2047  DORADOXSG1_NEWCONFIG03  DORADOXSG1_NEWCONFIG03             00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_NEWCONFIG03                                              UNKNOWN  ORCL:DORADOXSG1_NEWCONFIG03
    2044     1812     2047  DORADOXSG1_NEWCONFIG04  DORADOXSG1_NEWCONFIG04             00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_NEWCONFIG04                                              UNKNOWN  ORCL:DORADOXSG1_NEWCONFIG04
    2044     1812     2047  DORADOXSG1_NEWCONFIG05  DORADOXSG1_NEWCONFIG05             00000000000000000000000000000000               REGULAR         ASM Library - Generic Linux, version 2.0.12 (KABI_V2)  DORADOXSG1_NEWCONFIG05    

Belirli bir disk grubundaki diskleri görüntülemek için:

ASMCMD> lsdsk -k -G DATA

--Disk numaraları ile birlikte görüntülemek için:

ASMCMD> lsdsk -p -G DATA

--Disk oluşturulma tarihlerini görmek için:

ASMCMD> lsdsk -t -G DATA

Sistemde ASM tarafından henüz kullanılmayan aday diskleri görüntülemek için:

ASMCMD> lsdsk --candidate -k

Disk Group Attribute Bilgilerini Görüntüleme

ASM disk gruplarına ait attribute bilgileri aşağıdaki komut ile görüntülenebilir.

Tüm disk grupları için:


ASMCMD> lsattr -lm

-- Belli Bir Disk Grup İçin

ASMCMD> lsattr -lm -G DATA

Group_Name  Name                        Value         RO  Sys
DATA        access_control.enabled      FALSE         N   Y
DATA        access_control.umask        066           N   Y
DATA        appliance._partnering_type  GENERIC       Y   Y
DATA        ate_conversion_done         true          Y   Y
DATA        au_size                     4194304       Y   Y
DATA        cell.smart_scan_capable     FALSE         N   N
DATA        cell.sparse_dg              allnonsparse  N   N
DATA        compatible.advm             19.0.0.0.0    N   Y
DATA        compatible.asm              19.0.0.0.0    N   Y
DATA        compatible.rdbms            19.0.0.0.0    N   Y
DATA        content.check               FALSE         N   Y
DATA        content.type                data          N   Y
DATA        content_hardcheck.enabled   FALSE         N   Y
DATA        disk_repair_time            12.0h         N   Y
DATA        failgroup_repair_time       24.0h         N   Y
DATA        idp.boundary                auto          N   Y
DATA        idp.type                    dynamic       N   Y
DATA        logical_sector_size         512           N   Y
DATA        phys_meta_replicated        true          Y   Y
DATA        preferred_read.enabled      FALSE         N   Y
DATA        scrub_async_limit           1             N   Y
DATA        scrub_metadata.enabled      TRUE          N   Y
DATA        sector_size                 512           N   Y
DATA        thin_provisioned            FALSE         N   Y
DATA        vam_migration_done          false         Y   Y


-- Belirli bir attribute değerini filtrelemek için:

ASMCMD> lsattr -lm %compatible%
Group_Name  Name              Value       RO  Sys
DATA        compatible.advm   19.0.0.0.0  N   Y
DATA        compatible.asm    19.0.0.0.0  N   Y
DATA        compatible.rdbms  19.0.0.0.0  N   Y
RECO        compatible.advm   19.0.0.0.0  N   Y
RECO        compatible.asm    19.0.0.0.0  N   Y
RECO        compatible.rdbms  19.0.0.0.0  N   Y
SYSTEMDC    compatible.advm   19.0.0.0.0  N   Y
SYSTEMDC    compatible.asm    19.0.0.0.0  N   Y
SYSTEMDC    compatible.rdbms  19.0.0.0.0  N   Y

Disk Group Unmount İşlemi

Bir disk grubunu ASM üzerinden ayırmak için:

ASMCMD> umount ARCH

-- Tüm Disk Gruplarını Unmount etmek için

ASMCMD> umount -a

Not: Mount ve unmount işlemleri yalnızca komutun çalıştırıldığı node üzerinde etkili olur. RAC ortamlarında tüm node’larda ayrıca çalıştırılması gerekir.

Disk Group Mount İşlemi

ASMCMD> mount ARCH

--Tüm disk gruplarını mount etmek için:

ASMCMD> mount -a

ASM Rebalance İşlemi Başlatma

Disk ekleme veya çıkarma işlemlerinden sonra ASM verileri yeniden dağıtmak için rebalance işlemi gerçekleştirir.

Örneğin ARCH disk grubu için power değeri 8 olacak şekilde rebalance başlatmak:

ASMCMD> rebal --power 8 ARCH

--Devam eden ASM operasyonlarını görüntülemek için:

ASMCMD> lsop

Group_Name Pass      State Power
ARCH       REBALANCE RUN   8

Özellikle Exadata ve büyük RAC  ,DWH ortamlarında rebalance sürecinin takibi oldukça önemlidir. 

Veritabanı Password File Konumunu Bulma

ASM üzerinde tutulan password file konumunu görüntülemek için:

ASMCMD> pwget --dbuniquename DBACLASS
+DATA/DBACLASS/PASSWORD/pwddbaclass.256.899912377

ASM Password File Konumu

ASM instance password file konumunu görmek için:

ASMCMD> pwget --asm
+SYSTEMDC/orapwASM

ASM Template Bilgilerini Görüntüleme

Template yapıları ASM’in farklı dosya tipleri için kullandığı redundancy ve striping ayarlarını belirler.

Disk grubunda kullanılan ASM template yapılarını görmek için:

ASMCMD> lstmpl -l -G DATA
Group_Name  Group_Num  Name                       Stripe  Sys  Redund  PriReg  MirrReg
DATA        1          ARCHIVELOG                 COARSE  Y    UNPROT  COLD    COLD
DATA        1          ASMPARAMETERFILE           COARSE  Y    UNPROT  COLD    COLD
DATA        1          AUDIT_SPILLFILES           COARSE  Y    UNPROT  COLD    COLD
DATA        1          AUTOBACKUP                 COARSE  Y    UNPROT  COLD    COLD
DATA        1          AUTOLOGIN_KEY_STORE        COARSE  Y    UNPROT  COLD    COLD
DATA        1          BACKUPSET                  COARSE  Y    UNPROT  COLD    COLD
DATA        1          CHANGETRACKING             COARSE  Y    UNPROT  COLD    COLD
DATA        1          CONTROLFILE                FINE    Y    UNPROT  COLD    COLD
DATA        1          DATAFILE                   COARSE  Y    UNPROT  COLD    COLD
DATA        1          DATAGUARDCONFIG            COARSE  Y    UNPROT  COLD    COLD
DATA        1          DUMPSET                    COARSE  Y    UNPROT  COLD    COLD
DATA        1          FLASHBACK                  COARSE  Y    UNPROT  COLD    COLD
DATA        1          FLASHFILE                  COARSE  Y    UNPROT  COLD    COLD
DATA        1          INCR XTRANSPORT BACKUPSET  COARSE  Y    UNPROT  COLD    COLD
DATA        1          KEY_STORE                  COARSE  Y    UNPROT  COLD    COLD
DATA        1          OCRFILE                    COARSE  Y    UNPROT  COLD    COLD
DATA        1          ONLINELOG                  COARSE  Y    UNPROT  COLD    COLD
DATA        1          PARAMETERFILE              COARSE  Y    UNPROT  COLD    COLD
DATA        1          TEMPFILE                   COARSE  Y    UNPROT  COLD    COLD
DATA        1          VOTINGFILE                 COARSE  Y    UNPROT  COLD    COLD
DATA        1          XTRANSPORT                 COARSE  Y    UNPROT  COLD    COLD
DATA        1          XTRANSPORT BACKUPSET       COARSE  Y    UNPROT  COLD    COLD

Flex ASM Durumunu Kontrol Etme

Flex ASM özelliğinin aktif olup olmadığını kontrol etmek için:

ASMCMD> showclustermode

ASM cluster : Flex mode enabled - Direct Storage Access

ASM Cluster Durumu

ASM cluster durumunu görüntülemek için:

ASMCMD> showclusterstate
Normal

ASM Versiyonunu Öğrenme

Çalışan ASM versiyonunu görüntülemek için:

ASMCMD> showversion
ASM version         : 19.28.0.0.0

ASM SPFILE 

ASM instance tarafından kullanılan SPFILE konumunu görmek için:

ASMCMD> spget
+SYSTEMDC/octv-cls/ASMPARAMETERFILE/registry.253.1024855705


--ASM SPFILE dosyasının yedeğini almak için:

spbackup \
SYSTEMDC/octv-cls/ASMPARAMETERFILE/registry.253.1024855705 \
/tmp/asmspfile_backup.ora

Disk Group’a Bağlı Veritabanlarını Görüntüleme

Belirli bir disk grubunu kullanan istemcileri görmek için:

ASMCMD> lsct SYSTEMDC
DB_Name  Status     Software_Version  Compatible_version  Instance_Name  Disk_Group
+ASM     CONNECTED        19.0.0.0.0          19.0.0.0.0  +ASM1          SYSTEMDC
_OCR     CONNECTED                 -                   -  octavius01     SYSTEMDC


ASMCMD> lsct DATA
DB_Name  Status     Software_Version  Compatible_version  Instance_Name  Disk_Group
+ASM     CONNECTED        19.0.0.0.0          19.0.0.0.0  +ASM1          DATA
prodb    CONNECTED        19.0.0.0.0          19.0.0.0.0  prodb1         DATA

ASM Disk String Bilgisini Görüntüleme

ASM discovery string değerini görmek için:

ASMCMD> dsget
parameter:ORCL:*
profile:ORCL:*

ASM Kullanıcılarını Listeleme

ASM üzerinde tanımlı kullanıcıları ve yetkilerini görüntülemek için:

ASMCMD> lspwusr
        Username sysdba sysoper sysasm
             SYS   TRUE    TRUE   TRUE
CRSUSER__ASM_001   TRUE   FALSE   TRUE
         ASMSNMP   TRUE   FALSE  FALSE
      ORACLE_001   TRUE   FALSE  FALSE

ASM Dosyalarını Görüntüleme

Belirli bir disk grubunda açık olan dosyaları görmek için:


ASMCMD> lsof -G SYSTEMDC
DB_Name  Instance_Name  Path
+ASM     +ASM1          +SYSTEMDC.255.1024855713


--Belirli bir veritabanına ait açık dosyaları görmek için:

ASMCMD> lsof --dbname DBACLASS

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir