概要
在ASM升级到12.2/19c以后ASM Proxy 服务(ora.proxy_advm) 变成 offline
oracle@oracle01:$ . oraenv
ORACLE_SID = [ ] ? +ASM1
The Oracle base remains unchanged with value /u01/app/oracle
oracle@oracle01:+ASM1:$ asmcmd showclustermode
ASM cluster : Flex mode enabled
oracle@oracle01:+ASM1:$ crsctl stat res ora.proxy_advm -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.proxy_advm
OFFLINE OFFLINE oracle01 STABLE
OFFLINE OFFLINE oracle02 STABLE
--------------------------------------------------------------------------------
oracle@oracle01:+ASM1:$ export ORACLE_SID=+APX1
oracle@oracle01:+ASM1:$ env | grep ORA
ORACLE_SID=+APX1
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=/u01/app/12.2.0.1/grid
oracle@oracle01:+ASM1:$ sqlplus "/as sysasm"
SQL*Plus: Release 12.2.0.1.0 Production on Thu Oct 25 13:21:46 2018
Copyright (c) 1982, 2016, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORA-00099: warning: no parameter file specified for ASMPROXY instance
Proxy instance started.
Total System Global Area 1140850688 bytes
Fixed Size 8611176 bytes
Variable Size 1132239512 bytes
SQL> exit
Disconnected from Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
注意: 手工启动后ASM proxy 实例马上自动关闭了
oracle@oracle01:+ASM1:$ asmcmd volinfo --all
ASMCMD-9470: ASM proxy instance unavailable
ASMCMD-9473: volume STATE will show as REMOTE
no volumes found
oracle@oracle01:+ASM1:$
oracle@oracle01:+ASM1:$ asmcmd volenable --all
ASMCMD-9470: ASM proxy instance unavailable
ASMCMD-9471: cannot enable or disable volumes
原因
1) crsd.trc 有以下错误:
crsd.trc- QUEUE_TAG:
crsd.trc- TextMessage[1]
crsd.trc- RESOURCE:
crsd.trc: TextMessage[ora.proxy_advmUSR_ORA_OPI=trueUSR_ORA_INST_NAME=+APX1]
crsd.trc- T_HA_PREPARE_TAG:
crsd.trc- TextMessage[1]
crsd.trc-]
crsd.trc-2018-10-25 13:21:58.350 :UiServer:53: {1:62269:18516} Sending to PE. ctx= 10546c9d0, ClientPID=22552 set Properties (oracle,36908322)
crsd.trc:2018-10-25 13:21:58.356 :UiServer:53: {1:62269:18516} Response: c4|5!ORDERk7|MESSAGEt47|CRS-2501: Resource 'ora.proxy_advm' is disabledk7|MSGTYPEt1|1k5|OBJIDt14|ora.proxy_advmk4|WAITt1|0
crsd.trc:2018-10-25 13:21:58.356 :UiServer:53: {1:62269:18516} Response: c1|7!UI_DATAk14|ora.proxy_advmt4|2660
crsd.trc-2018-10-25 13:21:58.356 :UiServer:53: {1:62269:18516} Done for ctx=10546c9d0
crsd.trc-2018-10-25 13:22:05.347 :UiServer:53: {1:62271:30763} Sending to PE. ctx= 107f4c310, ClientPID=362 set Properties (oracle,120313), tint: {1:62269:30763}
crsd.trc-2018-10-25 13:22:05.358 :UiServer:53: {1:62271:30763} Done for ctx=107f4c310
--
crsd.trc- QUEUE_TAG:
crsd.trc- TextMessage[1]
crsd.trc- RESOURCE:
crsd.trc: TextMessage[ora.proxy_advmUSR_ORA_OPI=trueUSR_ORA_INST_NAME=+APX1]
crsd.trc- T_HA_FINISH_TAG:
crsd.trc- TextMessage[1]
crsd.trc-]
2) 错误描述:
2501, 1, "Resource '%s' is disabled"
// *Cause: The resource is currently disabled and so may not be operated on.
// *Action: Enable the resource and re-submit your request.
3) 在以下 bugs (关闭为 非Bug)中报告过类似问题:
Bug 23278062 : ASMFACTORY.CREATEACFSFILESYSTEM FAILS WITH ORA-15477:
Bug 28708688 : EXACLOUD ADD FORCE_START_ASMPROXY PARAMETER
4) 在12.2. 和以上版本,如果没有使用 ACFS,则 ora.proxy_advm (ASM proxy instance) 资源被缺省关闭.
解决方案
使用root 用户登录到RAC 节点1, 设置环境变量为 +ASM1 同时启动 ASM proxy如下:
# . oraenv
ORACLE_SID = [+ASM1] ?
The Oracle base has been set to /u01/app/grid
<$Grid Infrastructure Home>/bin/srvctl enable asm -proxy
<$Grid Infrastructure Home>/bin/srvctl start asm -proxy
<$Grid Infrastructure Home>/bin/srvctl status asm -proxy
<$Grid Infrastructure Home>/bin/crsctl stat res ora.proxy_advm -t
示例输出:
root@oracle01:~# . oraenv
ORACLE_SID = [root] ? +ASM1
The Oracle base has been set to /u01/app/oracle
root@oracle01:+ASM1:# cd /u01/app/12.2.0.1/grid/bin
root@oracle01:+ASM1:# echo $ORACLE_SID
+ASM1
root@oracle01:+ASM1:# echo $ORACLE_HOME
/u01/app/12.2.0.1/grid
root@oracle01:+ASM1:# ./srvctl enable asm -proxy
root@oracle01:+ASM1:# ./srvctl start asm -proxy
root@oracle01:+ASM1:# ./srvctl status asm -proxy
ADVM proxy is running on node oracle01,oracle02
root@oracle01:+ASM1:# ./crsctl stat res ora.proxy_advm -t
--------------------------------------------------------------------------------
Name Target State Server State details
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.proxy_advm
ONLINE ONLINE oracle01 STABLE
ONLINE ONLINE oracle02 STABLE
--------------------------------------------------------------------------------
|