【ASM】RAC19C asm因参数设置不当,集群无法启动

某客户运维人员,根据业务需求,本意修改Oracle数据库 内存参数,因操作不当,修改成asm实例参数,因内存参数值过大,造成asm实例无法启动, 具体处理过程如下:

检查集群日志,发现如下信息,显示所有磁盘组无法mount

2021-06-19 09:15:36.133 [ORAROOTAGENT(3375)]CRS-5019: All OCR locations are on ASM disk groups [CRS], and none of these disk groups are mounted. Details are at "(:CLSN00140:)" in "/u01/app/grid/diag/crs/rac19c/crs/trace/ohasd_orarootagent_root.trc".
2021-06-19 09:23:38.949 [OCRCHECK(8885)]CRS-1013: The OCR location in an ASM disk group is inaccessible. Details in /u01/app/grid/diag/crs/rac19c/crs/trace/ocrcheck_8885.trc.
2021-06-19 09:23:50.732 [OCRCONFIG(8932)]CRS-1013: The OCR location in an ASM disk group is inaccessible. Details in /u01/app/grid/diag/crs/rac19c/crs/trace/ocrconfig_8932.trc.

查看asm警告日志,发现memory_target 报警告

WARNING: You are trying to use the MEMORY_TARGET feature. This feature requires the /dev/shm file system to be mounted for at least 17179869184 bytes. /dev/shm is either not mounted or is mounted with available space less than this size. Please fix this so that MEMORY_TARGET can work as expected. Current available is 4093005824 and used is 86016 bytes. Ensure that the mount point is /dev/shm for this directory.
2021-06-19T09:40:16.086198+08:00
WARNING: You are trying to use the MEMORY_TARGET feature. This feature requires the /dev/shm file system to be mounted for at least 17179869184 bytes. /dev/shm is either not mounted or is mounted with available space less than this size. Please fix this so that MEMORY_TARGET can work as expected. Current available is 4093005824 and used is 86016 bytes. Ensure that the mount point is /dev/shm for this directory.
WARNING: Automatic memory management feature on ASM needs /dev/shm to be mounted and sized alteast to the value of MEMORY_TARGET 17179869184. Falling back to manual memory management on the ASM instance.

通过日志查找,发现在一个月前有人修改过该参数。目前asm无法启动,无法访问磁盘组。通过手动编辑pfile文件启动asm实例

#指定pfile文件启动ASM(指定近期SPFILE,确保只修正memory_max_target memory_target )
vi /tmp/pfile
spfile="+CRS/rac19c-cluster/ASMPARAMETERFILE/registry.253.1075633673"
*.memory_target=1073741824
*.memory_max_target=1073741824 
#启动后调回正确的参数
[grid@rac19c ~]$ sqlplus / as sysasm
SQL> startup pfile='/tmp/pfile';
SQL>alter system set memory_max_target=1073741824 scope=spfile;
SQL>alter system set memory_target =1073741824 scope=spfile;
#重启集群,验证是否正常 root
./crsctl start has
#通过以下命令查看,集群正常
crsctl stat res -t

至此问题解决,建议在做数据库系统相关参数更改时,确认修改是否正确。

请使用浏览器的分享功能分享到微信等