SUNOS export命令执行与bash

简介:     今天,一小弟去巡检ORACLE数据库,出现了点小插曲,情况是:一台服务器上有2个oracle数据库实例,均是10.2.0.1的,ORACLE_SID分别是APP、etos。
    今天,一小弟去巡检ORACLE数据库,出现了点小插曲,情况是:一台服务器上有2个oracle数据库实例,均是10.2.0.1的,ORACLE_SID分别是APP、etos。
操作系统用户oracle的默认环境变量配置ORACLE_SID是etos,从root切换到oracle时,以sqlplus / as sysdba默认登录到etos实例,且etos数据库的巡检也很顺利,
但是,到巡检APP时,那小弟傻了,登录不进去,使用export ORACLE_SID=APP指定ORACLE_SID时,系统无法执行export命令,报错如下:

    然后,那小弟打电话向我求助,对于这种情况,总有点有家不能回,进家无门的感觉,让人哭笑不得。
    我的做法是,首先确定操作系统类型:
$uname -a
SunOS kdswapdb01 5.10 Generic_127111-06 sun4u sparc SUNW,Sun-Fire-V890
    然后,查看oracle家目录下.profile的环境变量设置是如何声明的:
$ vi .profile
".profile" 12 lines, 491 characters 
#       This is the default standard profile provided to a user.
#       They are expected to edit it to meet their own needs.
MAIL=/usr/mail/${LOGNAME:?}
ORACLE_BASE=/u01/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.0.2
ORACLE_SID=etos
NLS_LANG=AMERICAN_AMERICA.ZHS16CGB231280
PATH=$ORACLE_HOME/bin:/bin:/sbin:/usr/ccs/bin:/usr/local/bin
BRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/network/lib:/usr/local/lib:/usr/lib
TMPDIR=/var/tmp
export ORALCE_BASE ORACLE_HOME ORACLE_SID NLS_LANG PATH LD_LIBRARY_PATH
    明确SUNOS的用户环境变量声明是使用export的,然而当前export命令不能执行,SUNOS还有一种环境变量声明方式即setenv,尝试setenv ORACLE_SID=APP:

    当前SUNOS不支持setenv,这时结合linux操作系统进行对比,可能没有执行bash,切换至bash环境下尝试:
$ bash
bash-3.00$ 
bash-3.00$ export ORACLE_SID=APP
bash-3.00$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Thu Jul 21 20:49:01 2016
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
SQL>
    问题解决,这里不得不提LINUX和SUNOS的一点不同: shell,两个操作系统的默认shell虽然都是/bin/sh,但linux默认shell是bash,/bin/sh仅是一个指向到/bin/bash的符号链接,
而solaris的默认shell是Bourne shell,名为/bin/sh。 所以,操作SUNOS时,最好首先执行bash,让当前环境切换至bash状态。





目录
相关文章
|
7月前
|
Linux Shell Windows
4:Bash shell命令-步入Linux的现代方法
4:Bash shell命令-步入Linux的现代方法
102 0
|
4月前
|
Kubernetes Shell Docker
在K8S中,如果容器没有bash命令,如何进⼊容器排查问题?
在K8S中,如果容器没有bash命令,如何进⼊容器排查问题?
|
4月前
|
缓存 Shell 开发工具
Git Bash⭐一、安装软件,与Git Bash基础命令
Git Bash⭐一、安装软件,与Git Bash基础命令
|
4月前
|
Shell Linux
在Linux中,哪⼀个bash内置命令能够进行数学运算?
在Linux中,哪⼀个bash内置命令能够进行数学运算?
|
4月前
|
缓存 Shell Linux
在Linux中,bash shell 中的 hash 命令有什么作用?
在Linux中,bash shell 中的 hash 命令有什么作用?
|
4月前
|
存储 Shell
Bash 脚本中的 `hash` 命令
【8月更文挑战第19天】
41 0
|
6月前
|
Unix Shell Linux
技术经验分享:Bash脚本命令使用详解
技术经验分享:Bash脚本命令使用详解
48 0
|
7月前
|
Shell
shell 命令(一)概述【别名、 bash重定向 、定义变量】
shell 命令(一)概述【别名、 bash重定向 、定义变量】
64 0
|
7月前
|
Linux Shell 开发工具
linux】-bash:vim:未找到命令
linux】-bash:vim:未找到命令
106 0
|
7月前
|
Shell
-bash: lsb_release: 未找到命令
-bash: lsb_release: 未找到命令