一、ASM磁盘和磁盘组管理
1、创建磁盘组
create diskgroup DG2 EXTERNAL REDUNDANCY DISK 'ORCL:A1';
create diskgroup SYSDGM normal redundancy FAILGROUP flgrp1 disk '/dev/rhdisk52','/dev/rhdisk53' FAILGROUP flgrp2 disk '/dev/rhdisk14','/dev/rhdisk13';
1)磁盘名称需要大写
2)磁盘名称使用V$asm_disk.path
2、磁盘组中添加磁盘
alter diskgroup dg2 add disk 'ORCL:A2';
1)磁盘名称使用V$asm_disk.path
3、磁盘组中删除磁盘
alter diskgroup dg2 drop disk 'a1';
1)磁盘名称使用的是V$asm_disk.name
4、删除磁盘组
drop diskgroup dg2 including contents;
二、ASM相关视图
1、查看是否有数据库实例连接上ASM实例
select instance_name,db_name,status from v$asm_client;
2、记录BALANCE操作
select operation,state,power,actual,sofar from v$asm_operation;
alter diskgroup SYSDGM rebalance power 11;
---power0~11,0表示不rebalance,这个参数由ASM_POWER_LIMIT设置。
3、ASM DISK信息
select path, state, total_mb, free_mb from v$asm_disk;
4、ASM DISKGROUP信息,包括磁盘大小和剩余空间
select name,state,type,total_mb,free_mb from v$asm_diskgroup;
三、ASM和表空间管理
1、ASM中创建表空间
create tablespace tgyun datafile '+DG2' SIZE 100M;
2、ASM表空间中添加数据文件
alter tablespace tgyun add datafile '+dg2' size 10m;
3、ASM表空间中删除数据文件
alter tablespace tgyun drop datafile '+DG2/tgyun/datafile/tgyun.257.747278679';
或者
alter tablespace tgyun drop datafile 3;
4、删除表空间
drop tablespace tgyun including contents;
--查看当前磁盘组状态
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
--卸载dg2磁盘组
SQL> alter diskgroup dg2 dismount;
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
--挂载dg2磁盘组
SQL> alter diskgroup dg2 mount;
--卸载所有磁盘组
SQL> alter diskgroup all dismount;
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
--挂载所有磁盘组
SQL> alter diskgroup all mount;
select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
--如果当前磁盘组有实例在访问,则不能被卸载
SQL> alter diskgroup data dismount;
alter diskgroup data dismount
* ERROR at line 1: ORA-15032: not all alterations performed
ORA-15027: active use of diskgroup "DATA" precludes its dismount
--创建目录
SQL> alter diskgroup dg2 add directory '+DG2/TGYUN';
Diskgroup altered.
--使用asmcmd查看(export ORACLE_SID=+ASM;asmcmd进入)
ASMCMD> pwd
+DG2
ASMCMD> ls -l
Type Redund Striped Time Sys Name
N TGYUN/
--目录重命名
SQL> alter diskgroup dg2 rename directory '+DG2/CHENGFEI' TO '+DG2/TGYUN';
Diskgroup altered.
ASMCMD> ls TGYUN/
--删除目录
SQL> alter diskgroup dg2 drop directory '+DG2/tgyun';
Diskgroup altered.
ASMCMD> ls
ASMCMD>
--添加别名
SQL> alter diskgroup dg2 add alias '+dg2/TGYUN' for '+dg2/tgyun/datafile/TY.256.754832383';
Diskgroup altered.
--使用asmcmd查看别名是否成功
ASMCMD> pwd
--别名重命名
SQL> alter diskgroup dg2 rename alias '+DG2/TGYUN' TO '+DG2/TGYUN.DBF';
Diskgroup altered.
--删除别名
SQL> alter diskgroup dg2 drop alias '+dg2/tgyun.dbf';
Diskgroup altered.
说明:
1)asmcmd命令行操作中,目录文件名不区分大小写,命令关键字区分大小写
2)磁盘组中的一个文件,最多只能建立一个别名,可以通过v$asm_alias视图查看别名的相关信息
----------------End------------------------------------------------------------
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/24930246/viewspace-1066150/
,如需转载,请注明出处,否则将追究法律责任。