阅读Oracle 11g的Linux安装指南后 ,特别注意安装前的要求; 我已经能够基于成功的手动安装来logging静默安装的响应文件。
问题是在执行基于logging的响应文件的无提示安装时,执行生成shell脚本以手动执行需要干预的任何步骤时,安装过程将失败。
进一步挖掘(读strace )显示以下例外logfile:
INFO: oracle.assistants.server:Internal PlugIn for {Micro Step state:step:1:configuration in CfmAggregateInstance: oracle.assistants.server:11.1.0.6.0:common:family=CFM:oh=/oracle/app/oracle/product/11.1.0/db_1:label=0} failed with an unhandled exception: oracle.sysman.emCfg.common.CfwExceptionUninitializedParameter: {Parameter:S_SYSPASS in {Aggregate:oracle.assistants.server:11.1.0.6.0:common}}: parameter value has never been set and no default is present. at oracle.sysman.emCfg.core.CfmParameterState.expressData(CfmParameterState.java:720) at oracle.sysman.emCfg.core.CfmParameterState.expressDataAsArgv(CfmParameterState.java:541) at oracle.sysman.emCfg.core.CfmParameterPair.appendDataAsArgv(CfmParameterPair.java:372) at oracle.sysman.emCfg.core.CfmArguments.expandOneArgv(CfmArguments.java:92) at oracle.sysman.emCfg.core.CfmArguments.expand(CfmArguments.java:61) at oracle.sysman.emCfg.core.CfmArguments.expandAsArgv(CfmArguments.java:107) at oracle.sysman.emCfg.core.PerformMicroStep.runJavaClass(PerformMicroStep.java:540) at oracle.sysman.emCfg.core.PerformMicroStep.executeMicroStep(PerformMicroStep.java:120) at oracle.sysman.emCfg.core.ActionPerformer.performMicroStep(ActionPerformer.java:917) at oracle.sysman.emCfg.core.ActionPerformer$Performer.run(ActionPerformer.java:1038)
我的怀疑是,logging的响应文件缺less在派生它的手动安装期间提供的参数。 值得注意的是S_SYSPASS 。
但是,即使手动设置响应文件中的所有密码字段也不能解决此问题。
我需要回答的问题是我在哪里可以对安装失败进行进一步的诊断。
find罪魁祸首; 使用-noconfig选项运行安装程序会导致configuration助手不从静默安assembly置文件inheritance密码。
所以,这是行不通的:
su oracle -- database/runInstaller -silent -noconfig -responseFile `pwd`/ORA11G_Linux.rsp
但是这样做:
su oracle -- database/runInstaller -silent -responseFile `pwd`/ORA11G_Linux.rsp
感谢今天的Oracle。