ASM (Oracle - Automatic Storage Management)
Oracle ASM started with Oracle 10g provides volume and filesystem management
where the I/O subsystem is directly handled by the Oracle Kernel. It provides highly
scalable and high availability storage instrastructure.
Each LUN is mapped as a disk. Disk are grouped together into disk group. ASM takes
care of writing / striping onto disk in the diskgroup. i.e Database files are automatically
spread over the available disks in the diskgroup it is done in extent level.
Each ASM file is contained in only one disk group.
A disk group can contain files belonging files to other db
Each database can use storage from multiple disk groups
ASM files are evenly spread across all ASM disks in disk group.
ASM Disk are partitioned into Allocation Units of 1 MB each.
ASM prohibits splitting of blocks across AU.
ASM instance manage the metadata required to make the ASM files
available to ordinary db instances
Database Instance communicate with ASM instance only
to obtain information about the layout of ASM files, database
instance access the contents of ASM files directly.
Process
RBAL : Re balance co-ordinate activitiy of disk groups
ARBn : Performs actual rebalance and data extents movement
ASMB bridge between asm ins and db ins
==
When ASM instance mounts disk group it registers disk group and connect string
Through name of disk group the db instance connect to ASM instance
ASMCMD ASM Command line Utility.
Its an Explorer to the ASM disk system.
1) When you execute asmcmd we get to the root of the ASM system i.e '+'
2) On executing the ls -l, you get details of the diskgroup presents.
3) With normal commands like cd,ls,du,mkdir,rm you could manipulate the ASM filesystem
Helpful Commands
du (disk usage) : Shows us the total disk space occupied by ASM files in that directory (and its subdirectory)
lsct : Information about the current ASM clients
lsdg : Information about the diskgroup and their attributes
State : Current State of Diskgroup whether Mounted/Connected
Type : Diskgroup Redundancy (NORMAL,HIGH,EXTERNAL)
REBAL : Y if rebalance operation in progress
Unbal : Y is rebalancing is required by diskgroup
Sector : Sector size in bytes
Block : Block size in bytes
AU : Allocation Unit
Total_MB : Size of diskgroup in MB
Free_MB : Free Space in Diskgroup
Req_mir_free_MB : Space that is required in the diskgroup to restore full redundancy after worst failure that can be tolerated by diskgroup.
(REQUIRED_MIRROR_FREE_MB column of V$ASM_DISKGROUP)
Offline_disks : Number of offline disks in the disk group.
Name : Disk group name.
rm : Removes files/directory which is equivalent to "ALTER DISKGROUP ..DROP FILE/DIRECTORY"