1. 程式人生 > 其它 >Oracle-ASM磁碟組屬性

Oracle-ASM磁碟組屬性

Oracle-ASM磁碟組屬性

磁碟組屬性

常見屬性
  • access_control.enabled:定了一個磁碟組的ASM File Access Control是否啟用,引數的值可以設定為true或者false(預設)

  • access_control.umask:與通常os層面的umask類似。用來設定ASM檔案的屬主,屬組和其他使用者的許可權。這個特性對磁碟組中所有檔案生效。

    • 屬性的值是3位數的組合,每一位可以是0,2,6數字中的一個。預設情況下為066
      • 設定為0:表示不排除任何許可權
      • 設定為2:表示排除掉寫許可權
      • 設定為6:表示把讀寫許可權都排除
  • au_size:指定分配單元(AU)大小,並且只能在建立磁碟組時設定

  • cell.smart_scan_capable:僅適用於 Oracle Exadata 儲存的配置

  • compatible.advm:指定磁碟組的 Oracle 自動儲存管理叢集檔案系統 (Oracle ACFS) 和 Oracle ASM 動態卷管理器 (Oracle ADVM) 相容性級別。

  • compatible.asm:指定了可以使用磁碟組的ASM例項的最低軟體版本

  • compatible.rdbms:指定磁碟組的資料庫相容性級別

  • disk_repair_time:指定了ASM保持磁碟offline狀態的時間,超過這個時間之後,將該盤drop。COMPATIBLE.ASM屬性要設定為11.1或者更高

  • sector_size:指定了磁碟組中磁碟的扇區大小,只能在建立磁碟組時指定

    • 可以設定為512,4096或者4k,預設值依OS平臺而定
    • 要修改該屬性的值,需要把COMPATIBLE.ASM和COMPATIBLE.RDBMS設定為11.2或者更高。
  • CONTENT.CHECK:控制磁碟組在rebalance時,是否進行內容校驗。該屬性的值可以設定為true或者false

    • 內容校驗包括使用者資料的HARD(Hardware Assisted Resilient Data)校驗,檔案目錄中檔案型別和檔案目錄資訊的校驗,以及映象內容的對比
  • CONTENT.TYPE:將磁碟組指定為幾種型別:DATA, RECOVERY或者SYSTEM。它還決定了到最近的partner磁碟或者failgroup的距離。預設值是DATA,同時指定了距離為1;值為RECOVERY則指定了距離為3;值為SYSTEM指定了距離為5.只在normal或者high冗餘的磁碟組中可用。並且COMPATIBLE.ASM要設定為11.2.0.3及以上才能啟用該屬性

    • 距離為1的意思是ASM認為所有的磁碟都具有partner關係
    • 距離為3的意思是每第三個磁碟具有partner關係
    • 距離為5的意思是每第五個磁碟具有partner關係
  • failgroup_repair_time(12c):指定了磁碟組中failgroup的修復時間。

    • 當ASM判定一整個failgroup發生故障時,這個引數就會啟用。預設值為24小時。如果在alter diskgroup offline disk語句中加入drop after子句,指定的repair time會覆蓋FAILGROUP_REPAIR_TIME
    • 只能通過alter fiskgroup設定,並且只對normal和high冗餘的磁碟組可用
  • scrub_async_limit(12c):設定了非同步清除的最大允許的並行讀請求。預設值為1

  • PHYS_META_REPLICATED(12): 用來跟蹤磁碟組元資料的複製狀態

    • 當磁碟組的ASM相容性設定為12.1或者更高時,每個磁碟的物理元資料會做複製。這些元資料包括此盤頭,FST表和AT表。
    • 元資料的複製是線上非同步做的。如果磁碟組中每個磁碟的元資料都做了複製,那麼該屬性的值就會被ASM設定為true
    • 只有在COMPATIBLE.ASM設定為12.1或者更高的磁碟組中才可以定義。使用者無法設定或者修改該屬性的值
  • STORAGE.TYPE: 指定了磁碟組中磁碟的型別

    • 屬性的值可以是EXADATA,PILLAR,ZFSAS和OTHER
      • OTHER:磁碟組中可以加入任意型別的磁碟
      • PILLAR或者ZFSAS:可以啟用HCC(Hybrid Columnar Compression)功能
        • ZFS型別的儲存必須是通過dNFS(Direct NFS)提供
        • Pillar Axion型別的儲存必須是通過SCSI或者光纖通道提供
  • THIN_PROVISIONED:用來控制在磁碟組reblance結束後,是否丟棄未使用的儲存空間

隱藏屬性
  • _REBALANCE_COMPACT:和rebalance過程中的compact階段有關,預設值為true.
    • 設定為false則可以禁止磁碟組rebalance過程中做compact
  • _EXTENT_COUNTS:和可變區大小特性有關,它決定了區大小在何時會增加
    • 屬性值設定為“20000 20000 214748367”,意指前20000個區的大小為1個AU,接下來20000個區大小由_EXTENT_SIZES屬性的第二個值決定,剩下的區大小由_EXTENT_SIZES屬性的第三個值決定
  • _EXTENT_SIZES:和可變區大小特性有關,指定了區大小的增幅,以AU為單位
    • 在ASM版本11.1,該屬性值為1 8 64,在11.2及更高版本中,屬性值為1 4 16
檢視磁碟組屬性
  • asmcmd lsattr

    # 11.2.0.4, 不同版本的屬性值不一樣
    asmcmd lsattr -G datadg -l
    
    # asmcmd檢視具體屬性值
    asmcmd lsattr -G datadg -lm au_size
    

    -- 11g

    Name Value
    access_control.enabled FALSE
    access_control.umask 066
    au_size 2097152
    cell.smart_scan_capable FALSE
    compatible.advm 11.2.0.0.0
    compatible.asm 11.2.0.0.0
    compatible.rdbms 11.2.0.0.0
    disk_repair_time 3.6h
    sector_size 512

  • v$asm_attribute

    -- 通過 V$ASM_ATTRIBUTE 檢視檢視
    col value for a18
    col name for a12
    col att_name for a32
    SELECT g.name, p.name att_name, p.value FROM V$ASM_ATTRIBUTE p, V$ASM_DISKGROUP g 
    WHERE p.GROUP_NUMBER = g.GROUP_NUMBER
     AND  p.name not like 'template%'
     -- AND  g.group_number = 2
    ;
    
  • 檢視9號檔案

    kfed read /dev/asm_data01 aus=4194304 aun=2 blkn=9|more   # 定位9號檔案的檔案目錄
    
修改磁碟組屬性
sql命令修改
-- 修改屬性
ALTER DISKGROUP data SET ATTRIBUTE 'content.type' = 'data';

欄位v$asm_attribute.read_only 為N,才能修改。若為Y,必須在建立時指定

asmcmd命令修改
asmcmd lsattr -G datadg -lm au_size
# 修改
asmcmd setattr -G datadg au_size '4M'