对于只能登录字符界面的很多服务器而言,能够使用silent模式创建一些组件是至关重要的。本文介绍如何在字符界面下使用asmca来创建ASM实例。
测试环境:Oracle 11.2.0.3 + Oracle Restart 【关于Oracle Restat,可以参看我之前的文章-How to Use Oracle Restart in Oracle 11gR2】
在没有创建ASM实例之前,Clusterware中的资源状况如下:
grid@solaris:~$ ct
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER_SOLARIS.lsnr
ONLINE ONLINE solaris
ora.ons
OFFLINE OFFLINE solaris
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 OFFLINE OFFLINE
ora.diskmon
1 OFFLINE OFFLINE
ora.evmd
1 ONLINE ONLINE solaris
ora.orcl.db
1 ONLINE ONLINE solaris Open
通过如下命令用gird用户创建ASM实例。
asmca -silent -configureASM -sysAsmPassword oracle -asmsnmpPassword oracle -diskString '/asmdisks/vdisk*' -diskGroupName DATADG -disk '/asmdisks/vdisk1' -redundancy EXTERNAL
-silent:表示静默模式,这在字符界面中至关重要。
-configureASM:表示本命令是用于配置ASM实例,如果ASM实例不存在,则会新建。
-sysAsmPassword:sysasm权限用户的密码。
-asmsnmpPassword:asmsnmp权限用户的密码。如果用过asmca图形界面的应该记得这两个密码在图形界面中都是需要输入的。
-diskString:ASM磁盘组的磁盘发现路径。
-diskGroupName:需要新建的磁盘组名称。
-disk:ASM磁盘名称。
-redundancy:磁盘冗余方式,本例中使用了外部冗余。
会有大量的屏幕输出,但是最后显示如下行表示命令成功完成。
ASM created and started successfully.
Disk Group DATADG created successfully.
再次检查Clusterware的资源状况,可以看到已经增加了ASM资源,并且已经正常启动。
grid@solaris:~$ ct
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.LISTENER_SOLARIS.lsnr
ONLINE ONLINE solaris
ora.asm
ONLINE ONLINE solaris Started
ora.ons
OFFLINE OFFLINE solaris
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 ONLINE ONLINE solaris
ora.diskmon
1 OFFLINE OFFLINE
ora.evmd
1 ONLINE ONLINE solaris
ora.orcl.db
1 ONLINE ONLINE solaris Open
查看ASM磁盘组状况。
ASMCMD> lsdg
State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED EXTERN N 512 4096 1048576 976 917 0 917 0 N DATADG/
接下来增加一个磁盘到该磁盘组中,同样通过asmca来完成,当然这个操作也可以用SQL*Plus中的alter diskgroup命令来完成。
asmca -silent -addDisk -diskGroupName DATADG -disk '/asmdisks/vdisk2' -sysAsmPassword oracle
同样会有大量输出,最后显示如下行表示操作完成。
Disks added successfully to disk group DATADG
再次检查ASM磁盘组状况。可以看到磁盘组容量已经扩充。
ASMCMD> lsdg
State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED EXTERN N 512 4096 1048576 1952 1891 0 1891 0 N DATADG/
如果想获得asmca的帮助,可以通过以下命令。
asmca -help