环境 oracle 10.2.0.4 rac+aix 5.3 +hacmp
今天在帮客户解决crs集群软件不能自动装载数据库的问题,按照oracle metalink文档説:
In Oracle 9i and Oracle Database 10g, when the Oracle initialization parameter LOCK_SGA is set to TRUE, Oracle will request large pages when allocating shared memory (shmget() call has SHM_LGPAGE flag set). For the AIX operating system to use large pages when allocating shared memory, the Oracle user ID must have CAP_BYPASS_RAC_VMM and CAP_PROPAGATE capabilities. Also, the AIX large page pool must be configured (as shown in the example below). When using large pages on an Oracle Real Application Cluster (RAC) database, where the srvctl command is used to start and stop the RAC database instances, it is also necessary to set the CAP_BYPASS_RAC_VMM and CAP_PROPAGATE capabilities for the root user ID.
需要给root和oracle用户 都赋予 CAP_BYPASS_RAC_VMM and CAP_PROPAGATE capabilities 属性
修改完后,停止数据库和crs,再启动crs,依然不能启动数据库,需要用sqlplus 手工启动数据库
也陷入了迷茫中,只能收集信息,向metalink开tar, 吃完中饭后,自己还在想这个问题,
突然想到安装oracle 11g rac时,给grid用户capabilities应该需要赋予三个属性,这时马上查oracle 11g rac安装手册
To check existing capabilities, enter the following command as root:
# /usr/bin/lsuser -a capabilities grid
To add capabilities, enter a command similar to the following:
# /usr/bin/chuser
capabilities=CAP_NUMA_ATTACH,CAP_BYPASS_RAC_VMM,CAP_PROPAGATE grid
发现root和oracle用户少了CAP_NUMA_ATTACH属性。
马上对oracle和root用户补上CAP_NUMA_ATTACH属性
问题解决,crs集群软件能自动启动数据库
在这次实施过程中,前面为什么会失败,主要是oracle metalink文档疏忽造成的,
所以我们要有这样一个意识,官方文档也有出错的地方,毕竟是人写出来的,难免犯错误,我们要敢于去质疑。
与大家分享。