----------------------------------------------------------
确定asm磁盘与物理磁盘的对应关系
[root@Maple disks]# oracleasm querydisk -d data
Disk "DATA" is a valid ASM disk on device /dev/hdd1[22,65]
[root@Maple disks]# oracleasm querydisk /dev/hdd1
Device "/dev/hdd1" is marked an ASM disk with the label "DATA"
-----------------------------------------------------------------------------------------------
Oracle ASM 与 Oracle 数据库紧密集成在一起,并与 Oracle 的数据管理工具套件配合工作。它可以简化数据库存储管理,并提供原始磁盘 I/O 的性能。
---------------------------------------------------------------------------------
[root@rac1 OracleAsm]# uname -a
Linux rac1 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:58:04 EST 2007 i686 i686 i386 GNU/Linux
[root@rac1 OracleAsm]# uname -r
2.6.9-67.ELsmp
[root@rac1 OracleAsm]#
--注意包的安装顺序
[root@rac1 OracleAsm]# rpm -Uvh oracleasm-support-2.1.4-1.el4.i386.rpm
warning: oracleasm-support-2.1.4-1.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
package oracleasm-support-2.1.4-1.el4 is already installed
[root@rac1 OracleAsm]# rpm -ivh oracleasm-2.6.9-67.EL-2.0.3-1.i686.rpm
Preparing... ########################################### [100%]
1:oracleasm-2.6.9-67.EL ########################################### [100%]
[root@rac1 OracleAsm]# rpm -ivh oracleasmlib-2.0.4-1.el4.i386.rpm
warning: oracleasmlib-2.0.4-1.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
1:oracleasmlib ########################################### [100%]
----------------------------------------------------------------------------------------------------------------
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 SQL> ALTER DISKGROUP ALL DISMOUNT
--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
ASM实例在启动时就能自动加载磁盘组
问题描述:
创建ASM实例后关闭实例,启动ASM实例时,出现ORA-15110错误
SQL> startup;
ASM instance started
Total System Global Area 104857600 bytes
Fixed Size 1217956 bytes
Variable Size 78473820 bytes
ASM Cache 25165824 bytes
ORA-15110: no diskgroups mounted
解决过程:
1.为了使ASM实例在启动时就能自动加载磁盘组,我们需要设置asm_diskgroups参数,并将修改的值写入spfile:
SQL> alter system set asm_diskgroups=oradata,fla scope=spfile;
这里添加了两组磁盘组:oradata,fla
2.关闭ASM实例
SQL> shutdown immediate;
3.打开ASM实例
SQL> startup;
ASM instance started
Total System Global Area 104857600 bytes
Fixed Size 1217956 bytes
Variable Size 78473820 bytes
ASM Cache 25165824 bytes
ASM diskgroups mounted
总结:
在ASM新增磁盘组后,为了ASM实例在下次打开时能自动加载新增磁盘组,需要配置 asm_diskgroups参数,并写入spfile
确定asm磁盘与物理磁盘的对应关系
[root@Maple disks]# oracleasm querydisk -d data
Disk "DATA" is a valid ASM disk on device /dev/hdd1[22,65]
[root@Maple disks]# oracleasm querydisk /dev/hdd1
Device "/dev/hdd1" is marked an ASM disk with the label "DATA"
-----------------------------------------------------------------------------------------------
Oracle ASM 与 Oracle 数据库紧密集成在一起,并与 Oracle 的数据管理工具套件配合工作。它可以简化数据库存储管理,并提供原始磁盘 I/O 的性能。
---------------------------------------------------------------------------------
[root@rac1 OracleAsm]# uname -a
Linux rac1 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:58:04 EST 2007 i686 i686 i386 GNU/Linux
[root@rac1 OracleAsm]# uname -r
2.6.9-67.ELsmp
[root@rac1 OracleAsm]#
--注意包的安装顺序
[root@rac1 OracleAsm]# rpm -Uvh oracleasm-support-2.1.4-1.el4.i386.rpm
warning: oracleasm-support-2.1.4-1.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
package oracleasm-support-2.1.4-1.el4 is already installed
[root@rac1 OracleAsm]# rpm -ivh oracleasm-2.6.9-67.EL-2.0.3-1.i686.rpm
Preparing... ########################################### [100%]
1:oracleasm-2.6.9-67.EL ########################################### [100%]
[root@rac1 OracleAsm]# rpm -ivh oracleasmlib-2.0.4-1.el4.i386.rpm
warning: oracleasmlib-2.0.4-1.el4.i386.rpm: V3 DSA signature: NOKEY, key ID b38a8516
Preparing... ########################################### [100%]
1:oracleasmlib ########################################### [100%]
----------------------------------------------------------------------------------------------------------------
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 SQL> ALTER DISKGROUP ALL DISMOUNT
--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
ASM实例在启动时就能自动加载磁盘组
问题描述:
创建ASM实例后关闭实例,启动ASM实例时,出现ORA-15110错误
SQL> startup;
ASM instance started
Total System Global Area 104857600 bytes
Fixed Size 1217956 bytes
Variable Size 78473820 bytes
ASM Cache 25165824 bytes
ORA-15110: no diskgroups mounted
解决过程:
1.为了使ASM实例在启动时就能自动加载磁盘组,我们需要设置asm_diskgroups参数,并将修改的值写入spfile:
SQL> alter system set asm_diskgroups=oradata,fla scope=spfile;
这里添加了两组磁盘组:oradata,fla
2.关闭ASM实例
SQL> shutdown immediate;
3.打开ASM实例
SQL> startup;
ASM instance started
Total System Global Area 104857600 bytes
Fixed Size 1217956 bytes
Variable Size 78473820 bytes
ASM Cache 25165824 bytes
ASM diskgroups mounted
总结:
在ASM新增磁盘组后,为了ASM实例在下次打开时能自动加载新增磁盘组,需要配置 asm_diskgroups参数,并写入spfile