PRCS-1007 : Server pool egapdb already exists
1.项目环境:
平台:aix 6.1
oracle版本:11.2.0.3(psu5)
2.问题背景:
由于业务发展,数据库需要扩容,规划把现网的某单实例库转换成rac。按照方案做完以后,两个节点的数据库都可以手动启停,但是无法通过crs启停(但是我已经向集群中注册过了database和instance信息)。crs_stat -t查看也能查到注册的数据库(状态为offline)
srvctl add database -d egapdb -o /apps/oracle/product/11.2.0.3/db_1 srvctl add instance -d egapdb -i egapdb1 -n egapdb1 srvctl add instance -d egapdb -i egapdb2 -n egapdb2
--如果使用的是asm那么还需要执行如下命令
srvctl modify instance -d egapdb -i egapdb1 -s +ASM1 srvctl modify instance -d egapdb -i egapdb2 -s +ASM2
因为数据库是能够手动正常启停的,我觉得把database注册信息从ocr中删除,再重新添加看能不能解决问题。
srvctl remove database -d <db_unique_name>
但是这个命令执行了很长时间没有反应,不报错,也没有日志,就一直卡着。于是直接ctrl+c把命令结束掉,命令结束掉以后crs_stat -t查看以后已经没有“ora.egapdb.db”的信息了。我以为是已经成功删除了,我准备再次向ocr中注册database资源,但是报如下错:
root@egapdb1:/#srvctl add database -d egapdb -o /apps/oracle/product/11.2.0.3/db_1 PRCS-1007 : Server pool egapdb already exists PRCR-1086 : server pool ora.egapdb is already registered
试着再次删除的时候也报错
root@egapdb1:/#srvctl remove database -d egapdb PRCD-1120 : The resource for database egapdb could not be found. PRCR-1001 : Resource ora.egapdb.db does not exist
3.解决方案:
查了mos发现了一篇类似的troubleshooting
PRCS-1007 PRCR-1086 - Resources in OCR Are not Cleaned up Completely (Doc ID 1108023.1)
根据该文档,判断应该是由于我认为终止srvctl remove database -d 命令以后,导致ocr中注册信息没有完全清除。因为报的错误是
“Server pool egapdb already exists”所以就尝试删除serverpool,
--继续报错
root@egapdb1:/#srvctl remove srvpool -g egapdb PRKO-3161 : Server pool egapdb is internally managed as part of administrator-managed database configuration and therefore cannot be removed directly via srvpool object.
后来通过下面的命令删除成功
删除以后重新向ocr中注册database及instance,注册成功以后能够通过crs正常启停数据库
----希望能对遇到同样问题的朋友有所帮助!
本文出自 “技术” 博客,请务必保留此出处http://589985.blog.51cto.com/1609992/1390689
PRCS-1007 : Server pool egapdb already exists,古老的榕树,5-wow.com
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。