赞
踩
ASM是Oracle的逻辑卷管理器,利用ASM,把多个磁盘组织为一个磁盘组,数据均匀分布在这些磁盘上
在ASM磁盘组中可以存储OCR、Voting文件以及数据库中的数据文件、控制文件和重做日志文件
借助于OMF,在磁盘组中存储文件时,文件名称和大小都可省略,全部自动指定
在ASM磁盘组中可以创建卷和ACFS文件系统,
ASM实例负责磁盘组进行挂接,读写,重新平衡等操作
为了使用ASM,在每个节点上需要创建并运行一个ASM实例,在共享存储设备上需要创建至少一个ASM磁盘组,通过ASM实例访问这些磁盘组
在安装Grid infrastructure软件时如果选择使用ASM,那么ASM实例和磁盘组将自动创建
ASM实例和磁盘组可以通过SQL*Plus、ASMCA、ASMCMD以及EM等各种工具进行管理
以下命令用于对ASM实例进行管理:
$ srvctl status asm
$ srvctl stop asm
$ srvctl start asm
以下命令用于对ASM磁盘组进行管理:
srvctl status diskgroup -g data
srvctl stop diskgroup -g data
srvctl start diskgroup -g data
$ export ORACLE_SID=+ASM1
$ sqlplus / as sysasm
SQL> CREATE DISKGROUP dg1 external REDUNDANCY
DISK
'/dev/raw/raw1',
'/dev/raw/raw2'
SQL>SELECT name,state,type,total_mb,free_mb
FROM v$asm_diskgroup;
SQL>SELECT group_number,path,state,total_mb,
free_mb
FROM v$asm_disk;
磁盘组通过mirror方式保证数据的安全
普通冗余:每个磁盘组有两个FAILGROUP
高冗余:每个磁盘组有三个FAILGROUP
外部冗余:通过存储设备的冗余来保证数据安全
SQL> CREATE DISKGROUP dg1 NORMAL REDUNDANCY
FAILGROUP fg1 DISK
‘/dev/raw/raw1, '/dev/raw/raw3'
FAILGROUP fg2 DISK
‘/dev/raw/raw2’, '/dev/raw/raw4'
在创建磁盘组的节点上,磁盘组被自动挂接。在其他节点上的挂接:
SQL>ALTER DISKGROUP dg1 MOUNT;
磁盘组的卸载:
ALTER DISKGROUP dg1 DISMOUNT;
向磁盘组中添加磁盘:
SQL>ALTER DISKGROUP dg1
ADD DISK
'/dev/raw/raw3' NAME disk3,
'/dev/raw/raw4' NAME disk4;
从磁盘组中删除磁盘:
SQL>ALTER DISKGROUP dg1 DROP DISK disk3;
SQL>alter diskgroup dg1 drop disk3 in failgroup fg2;
SQL>ALTER DISKGROUP DG1 UNDROP DISKS;
当磁盘组中的磁盘发生变化时,磁盘组将自动进行重新平衡
平衡级别为0-11,当手工进行重新平衡时,可以指定平衡级别
可用的最高级别通过初始化参数ASM_POWER_LIMIT指定
SQL>ALTER DISKGROUP dg1 REBALANCE POWER 3;
SQL>ALTER DISKGROUP dg1 REBALANCE POWER 3 WAIT;
在其中一个选定的节点上保持磁盘组处于mounted状态,在其他节点上将磁盘组卸载,在选定的节点上执行:
SQL> DROP DISKGROUP dg1;
SQL> DROP DISKGROUP dg1 INCLUDING CONTENTS;
oracleasm deletedisk scdata01
oracleasm deletedisk scdata02
dd if=/dev/null of=/dev/sdb1 bs=1m count=1 ---清理磁盘头信息方法。
select name,state,type,total_mb,free_mb from v$asm_diskgroup;
select group_num,path,total_mb,free_mb from v$asm_disk;
select group_number,instance_name,db_name,status from v$asm_client;
1 磁盘的平衡能力在0-11,共12个级别,其中0表示停止进行平衡,11表示以最快的方式进行平衡。
2 在语句中指定平衡参数超过asm_power_limit时,指定值无效 。
3 ASM磁盘组重新过程主要通过rbal进程实现。
4 如果希望平衡操作完成后上述命令才返回,可以加上wait指令。
执行平衡语句:
alter diskgroup dg1 rebalance power 0;
alter diskgroup dg1 rebalance power 3;
alter diskgroup dg1 rebalance power 3 wait;
可以通过动态性能视图v$asm_client可以访问数据库实例和ASM实例的访问情况。
目录的创建:
SQL>ALTER DISKGROUP dg1 ADD DIRECTORY '+dg1/dir1';
目录的重新命名:
SQL>ALTER DISKGROUP dg1 RENAME DIRECTORY ‘+dg1/dir1’ TO ‘+dg1/dir2‘
n目录的删除:
SQL>ALTER DISKGROUP dg1 DROP DIRECTORY '+dg1/dir1' FORCE;
n删除磁盘组中不再需要的文件,例如:
SQL> ALTER DISKGROUP dg1 DROP FILE '+dg1/myfiles/my_undo_ts';
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。