诗檀软件专业数据库修复团队
适用于:
Oracle Server - Enterprise Edition – 版本11.2.0.1.0 及以上 [Release: 11.2 and later ]
本文信息适用于任何平台。
症状
CRS 和ASM从2节点RAC 10.2.0.4升级到11.2。
ASM 升级,ASMCA由于ORA-1507 失败: database not mounted
ASMCA 无法验证现有的10g ASM 实例。
[main] [ 2009-10-29 12:49:09.813 CDT ] [OracleHome.getVersion:896] Homeinfo
/app001/oracle/10204/software,2
[main] [ 2009-10-29 12:49:10.823 CDT ] [OracleHome.getVersion:922]
OracleHome.server.getVersion Version: 10.2.0.4.0
[main] [ 2009-10-29 12:49:10.824 CDT ] [OracleHome.getVersion:943] Current
Version From Inventory: 10.2.0.4.0
[main] [ 2009-10-29 12:49:10.825 CDT ] [OracleHome.getVersion:948] using
sqlplus: /app001/oracle/10204/software/bin/sqlplus
[main] [ 2009-10-29 12:49:10.825 CDT ] [UsmcaLogger.logInfo:141] Role SYSDBA
[main] [ 2009-10-29 12:49:10.826 CDT ] [UsmcaLogger.logInfo:141] OS Auth
true
[main] [ 2009-10-29 12:49:10.928 CDT ] [SQLEngine.done:2148] Done called
[main] [ 2009-10-29 12:49:10.930 CDT ] [UsmcaLogger.logException:171]
SEVERE:method
oracle.sysman.assistants.usmca.backend.USMInstanceRac:checkAndStartupInstance
[main] [ 2009-10-29 12:49:10.931 CDT ] [UsmcaLogger.logException:172]
ORA-1507: database not mounted
.
[main] [ 2009-10-29 12:49:10.932 CDT ] [UsmcaLogger.logException:173]
oracle.sysman.assistants.util.sqlEngine.SQLFatalErrorException: ORA-1507:
database not mounted
.
oracle.sysman.assistants.util.sqlEngine.SQLEngine.executeImpl(SQLEngine.java:1
650)
oracle.sysman.assistants.util.sqlEngine.SQLEngine.connect(SQLEngine.java:973)
oracle.sysman.assistants.usmca.backend.USMInstance.connectToASM(USMInstance.ja
va:548)
oracle.sysman.assistants.usmca.backend.USMInstance.checkAndStartupInstance(USM
Instance.java:568)
oracle.sysman.assistants.usmca.backend.USMInstanceRac.checkAndStartupInstance(
USMInstanceRac.java:2668)
oracle.sysman.assistants.usmca.backend.USMInstanceRac.discoverASMInstance(USMI
nstanceRac.java:2383)
oracle.sysman.assistants.usmca.backend.USMInstance.initialize(USMInstance.java
:248)
oracle.sysman.assistants.usmca.backend.USMInstanceRac.initialize(USMInstanceRa
c.java:275)
oracle.sysman.assistants.usmca.backend.USMInstance.getInstance(USMInstance.jav
a:213)
oracle.sysman.assistants.usmca.service.UsmcaService.migrateASMInstance(UsmcaSe
rvice.java:204)
尝试取消设置所有Oracle相关的环境变量。不起作用。
确保节点被pin。不起作用。
尝试应用
Patch 8288940。不起作用。
原因
在login.sql中,"select 'You are connected to '||name||' as the user '||user from v$database dual;" ,导致连接到ASM时,"ORA-1507: database not mounted " 。
ORACLE_HOME/sqlplus/admin中login.sql/glogin.sql 的默认位置应该没问题,因为我们在 11.2 (未发布的Bug 8207018 和5847703)中解决了。
在升级之前,SQLPATH 环境变量被定义。
解决方案
当我们通过ASMCA内部调用SQLPLUS 时,需要过滤SQLPATH 环境变量。这将在未发布的 Bug 9074163中修复。
解决办法:
在升级之前,取消设置所有Oracle 环境变量,包括SQLPATH。