Oracle HA 之ADVM和ACFS


--ADVM

ADVM主要是為了使除了數據庫之外的第三方應用程序也可以使用asm存儲,這樣不限於使asm局限於自家的數據庫領域。要想使用ADVM首先必須安裝grid,已經創建好了asm磁盤,asm磁盤組。一個advm卷可以占用一個磁盤組的所有空間,也可以占用部分空間,一個advm卷的空間只能來自於一個asm磁盤組,但是一個asm磁盤組可以創建多個advm卷。每次創建的advm卷都會在/dev/asm/目錄下產生一個文件,用於創建文件系統。

創建ADVM的方法:
    1)asmca創建advm卷--略
    2)使用asmcmd下的volcreate命令創建advm卷

[grid@node1 ~]$ asmcmd -p
ASMCMD [+] > volcreate -G ADVMDG -s 2g advm02
ASMCMD [+] > volinfo -G ADVMDG advm02
Diskgroup Name: ADVMDG

     Volume Name: ADVM02
     Volume Device: /dev/asm/advm02-92
     State: ENABLED
     Size (MB): 2048
     Resize Unit (MB): 32
     Redundancy: UNPROT
     Stripe Columns: 4
     Stripe Width (K): 128
     Usage:
     Mountpath:

ASMCMD [+] >

    3)使用SQL創建advm卷

[grid@node1 ~]$ sqlplus / as sysdba                                                           --sqlplus下穿件advm不能使用sysdba權限登錄,否則會報權限不足,需要使用sysasm權限

SQL*Plus: Release 11.2.0.4.0 Production on Tue Aug 2 17:17:38 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options

SQL> alter diskgroup advmdg add volume advm03 size 2g;
alter diskgroup advmdg add volume advm03 size 2g
*
ERROR at line 1:
ORA-15032: not all alterations performed
ORA-15260: permission denied on ASM disk group


SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options
[grid@node1 ~]$ sqlplus / as sysasm

SQL*Plus: Release 11.2.0.4.0 Production on Tue Aug 2 17:18:51 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options

SQL> alter diskgroup advmdg add volume advm03 size 2g;

Diskgroup altered.

SQL>

>調整卷大小:如果advm卷已經創建了文件系統,那么不可以直接通過grid工具的方法修改卷大小,而只能使用文件系統擴展工具調整卷大小,比如acfsutil size命令。
   
    1)asmca調整卷大小--略
    2)asmcmd對應命令調整卷大小:

ASMCMD [+] > volresize -G ADVMDG -s 2g advm03
The requested size is smaller than the current size.
Data corruption may occur.
Are you sure? [y/n]: y
ASMCMD [+] > volinfo -G ADVMDG advm03
Diskgroup Name: ADVMDG

     Volume Name: ADVM03
     Volume Device: /dev/asm/advm03-92
     State: ENABLED
     Size (MB): 2048
     Resize Unit (MB): 32
     Redundancy: UNPROT
     Stripe Columns: 4
     Stripe Width (K): 128
     Usage:
     Mountpath:

ASMCMD [+] >

    3)SQL命令:

[grid@node1 ~]$ sqlplus / as sysasm

SQL*Plus: Release 11.2.0.4.0 Production on Tue Aug 2 17:32:06 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.


Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options

SQL> alter diskgroup advmdg resize volume advm03 size 4g;

Diskgroup altered.

SQL>

>監控ADVM視圖

     v$asm_file視圖只能看到類型(type)為asmvol,看不到卷名,v$asm_alias也看不到卷名:

SQL> select group_number,bytes,type from v$asm_file;

GROUP_NUMBER      BYTES TYPE
------------ ---------- ------------------------------
       1       1536 ASMPARAMETERFILE
       1  272756736 OCRFILE
       2  775954432 DATAFILE
       2  566239232 DATAFILE
       2   99622912 DATAFILE
       2    5251072 DATAFILE
       2   18497536 CONTROLFILE
       2   52429312 ONLINELOG
       2   52429312 ONLINELOG
       2   33562624 TEMPFILE
       2   26222592 DATAFILE
       2   52429312 ONLINELOG
       2   52429312 ONLINELOG
       2       3584 PARAMETERFILE
       3   18497536 CONTROLFILE
       3   52429312 ONLINELOG
       3   52429312 ONLINELOG
       3   52429312 ONLINELOG
       3   52429312 ONLINELOG
       4 2147483648 ASMVOL
       4 2147483648 ASMVOL
       4 4294967296 ASMVOL

22 rows selected.

*****************專用視圖****************v$asm_volume可以看到卷名,卷的狀態來自於v$asm_volume_stat視圖:******************

SQL> select volume_name,size_mb,state,volume_device,mountpath from v$asm_volume;

VOLUME_NAME       SIZE_MB STATE            VOLUME_DEVICE                       MOUNTPATH
--------------- ---------- ------------------------ -------------------------------------------------- --------------------------------------------------
ADVM01              2048 ENABLED            /dev/asm/advm01-92
ADVM02              2048 ENABLED            /dev/asm/advm02-92
ADVM03              4096 ENABLED            /dev/asm/advm03-92

SQL> select volume_name,reads,writes,read_errs,bytes_read,bytes_written from v$asm_volume_stat;

VOLUME_NAME         READS     WRITES  READ_ERRS BYTES_READ BYTES_WRITTEN
--------------- ---------- ---------- ---------- ---------- -------------
ADVM01            35    24803           0     140288    101593088
ADVM02             0        0           0      0        0
ADVM03             0        0           0      0        0

>創建標准文件系統:[root@node1 ~]# mkfs.ext3 /dev/asm/advm01-92

--ACFS

>ACFS不能用於linux根分區,不能用於grid的安裝目錄,不支持數據庫文件(即asm存儲的文件),使用acfs要依賴於advm卷。

>格式化ADVM卷的為AFCS文件系統方式:

1)普通方式:
[root@node2 advmdg_advm02]# mkfs.acfs /dev/asm/advm03-92
mkfs.acfs: version                   = 11.2.0.4.0
mkfs.acfs: on-disk version           = 39.0
mkfs.acfs: volume                    = /dev/asm/advm03-92
mkfs.acfs: volume size               = 2147483648
mkfs.acfs: Format complete.
[root@node2 advmdg_advm02]#

掛載命令:可以通過asmca獲得

[root@node2 ~]# /bin/mount -t acfs /dev/asm/advm03-92 /u01/app/grid/acfsmounts/advmdg_advm03

2)asmca方式:可以直接將acfs磁盤交給grid自動管理--略。

>acfs管理工具:acfsutil


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM