问题:HP-UX su 命令在版本 11i 1.6 中已进行了修改,以便不会像上一个发行版一样出现环境变量的继承。 因此,类似 Oracle 的应用程序(依赖于继承特性),就必须明确地对所有需要的变量进行检查,以确保其存在。
解决办法:环境变量(例如,Oracle 需要的LD_LIBRARY_PATH 或 SHLIB_PATH)可以在 Oracle 配置文件中定义,或者使用设置了环境变量的 .env 文件调用工具包的 su 命令。 以下示例显示了在工具包脚本中读取 Oracle 调用应使用的方式:
# su oracle -c "cd ${ORACLE_HOME}; . ./.env; sqlplus '/as sysdba'"<<EOF