ASM之快速理解
Oracle ASM 与 Oracle 数据库紧密集成在一起,并与 Oracle 的数据管理工具套件配合工作。
它可以简化数据库存储管理,并提供原始磁盘 I/O 的性能。
1、配置 ASMLib。
以 root 用户身份在两个节点上配置 ASMLib。
命令: # /etc/init.d/oracleasm configure
2、创建 ASM 磁盘。
以 root 用户身份在任何一个节点上创建 ASM 磁盘。
命令:# /etc/init.d/oracleasm createdisk VOL1 /dev/sdc1
3、查看ASM磁盘
以root用户在任何一个节点上执行下面命令:
命令:# /etc/init.d/oracleasm listdisks
4、启动ASM实例命令
$ export ORACLE_SID='+ASM'
$ sqlplus /nolog
SQL> STARTUP;
--不打开磁盘组启动ASM实例
SQL> startup nomount
SQL> alter diskgroup all mount
--ASM是依赖于CSS守护进程的,因此在启动ASM 实例前要确保css守护进程已经启动。
--检查CSS守护进程是否启动的命令
SQL> crsctl check cssd
5、查看ASM管理的磁盘及磁盘组信息
$ export ORACLE_SID='+ASM'
$ sqlplus /nolog
$ conn /as sysdba
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
---查看ASM实例名及状态
SQL> select instance_name,status from v$instance;
6、创建磁盘组
--获取磁盘列表
磁盘状态:
CANDIDATE-该磁盘从来没有分配给任何ASM磁盘组;
FORMER-该磁盘曾分配给ASM磁盘组,但目前处于未分配状态;
PROVISIONED-正在使用ASMLib,并且该磁盘尚未分配给磁盘组
SQL> select * from V$ASM_DISK;
--创建磁盘组
SQL> CREATE DISKGROUP dgroupA NORMAL REDUNDANCY
FAILGROUP controller1 DISK
'dev/a1' NAME diskA1 SIZE 120G FORCE,
'dev/a2' NAME diskA2
'dev/a3'
FAILGROUP controller2 DISK
'dev/b1' NAME diskB1
'dev/b2' NAME diskB2
'dev/b3';
7、删除磁盘组
SQL> DROP DISKGROUP dgroupA INCLUDING CONTENTS;
8、将磁盘添加至磁盘组
SQL> ALTER DISKGROUP dgroupA ADD DISK
'/dev/rdsk/c0t4d0s2' NAME A5,
'/dev/rdsk/c0t50s2' NAME A6,
'/dev/rdsk/c0t60s2' NAME A7;
9、从磁盘组中删除一个磁盘
SQL> ALTER DISKGROUP dgroupA DROP DISK A5;
--取消磁盘删除操作
SQL> ALTER DISKGROUP dgroupA UNDROP DISKS;
10、卸载磁盘组
SQL> ALTER DISKGROUP dgroupA DISMOUNT;
11、验证磁盘组元数据的内部一致性
SQL> ALTER DISKGROUP dgroupA CHECK ALL;
12、===========启动ASMCMD命令=============
$ su - oracle
$ export ORACLE_SID=+ASM1
$ asmcmd
ASMCMD>help
具体命令的用途可以使用help命令来读取,如下:
ASMCMD>help cd
ASMCMD 命令让你更快速的知道,其实跟文件系统也是那么一回事!!
Oracle ASM 与 Oracle 数据库紧密集成在一起,并与 Oracle 的数据管理工具套件配合工作。
它可以简化数据库存储管理,并提供原始磁盘 I/O 的性能。
1、配置 ASMLib。
以 root 用户身份在两个节点上配置 ASMLib。
命令: # /etc/init.d/oracleasm configure
2、创建 ASM 磁盘。
以 root 用户身份在任何一个节点上创建 ASM 磁盘。
命令:# /etc/init.d/oracleasm createdisk VOL1 /dev/sdc1
3、查看ASM磁盘
以root用户在任何一个节点上执行下面命令:
命令:# /etc/init.d/oracleasm listdisks
4、启动ASM实例命令
$ export ORACLE_SID='+ASM'
$ sqlplus /nolog
SQL> STARTUP;
--不打开磁盘组启动ASM实例
SQL> startup nomount
SQL> alter diskgroup all mount
--ASM是依赖于CSS守护进程的,因此在启动ASM 实例前要确保css守护进程已经启动。
--检查CSS守护进程是否启动的命令
SQL> crsctl check cssd
5、查看ASM管理的磁盘及磁盘组信息
$ export ORACLE_SID='+ASM'
$ sqlplus /nolog
$ conn /as sysdba
SQL> select group_number,name,state,total_mb,free_mb from v$asm_diskgroup;
---查看ASM实例名及状态
SQL> select instance_name,status from v$instance;
6、创建磁盘组
--获取磁盘列表
磁盘状态:
CANDIDATE-该磁盘从来没有分配给任何ASM磁盘组;
FORMER-该磁盘曾分配给ASM磁盘组,但目前处于未分配状态;
PROVISIONED-正在使用ASMLib,并且该磁盘尚未分配给磁盘组
SQL> select * from V$ASM_DISK;
--创建磁盘组
SQL> CREATE DISKGROUP dgroupA NORMAL REDUNDANCY
FAILGROUP controller1 DISK
'dev/a1' NAME diskA1 SIZE 120G FORCE,
'dev/a2' NAME diskA2
'dev/a3'
FAILGROUP controller2 DISK
'dev/b1' NAME diskB1
'dev/b2' NAME diskB2
'dev/b3';
7、删除磁盘组
SQL> DROP DISKGROUP dgroupA INCLUDING CONTENTS;
8、将磁盘添加至磁盘组
SQL> ALTER DISKGROUP dgroupA ADD DISK
'/dev/rdsk/c0t4d0s2' NAME A5,
'/dev/rdsk/c0t50s2' NAME A6,
'/dev/rdsk/c0t60s2' NAME A7;
9、从磁盘组中删除一个磁盘
SQL> ALTER DISKGROUP dgroupA DROP DISK A5;
--取消磁盘删除操作
SQL> ALTER DISKGROUP dgroupA UNDROP DISKS;
10、卸载磁盘组
SQL> ALTER DISKGROUP dgroupA DISMOUNT;
11、验证磁盘组元数据的内部一致性
SQL> ALTER DISKGROUP dgroupA CHECK ALL;
12、===========启动ASMCMD命令=============
$ su - oracle
$ export ORACLE_SID=+ASM1
$ asmcmd
ASMCMD>help
具体命令的用途可以使用help命令来读取,如下:
ASMCMD>help cd
ASMCMD 命令让你更快速的知道,其实跟文件系统也是那么一回事!!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29500582/viewspace-1356574/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29500582/viewspace-1356574/