【问题标题】:Permanently set enviroment variables on UNIX SLES12在 UNIX SLES 12 上永久设置环境变量
【发布时间】:2021-07-16 19:59:55
【问题描述】:

对于 Oracle 安装,我必须更改环境变量。

例如,我尝试了以下方法:

export ORACLE_HOME=/<path>/oracle/product/<version>/<home>

在同一个会话中它可以工作,但是当我打开一个新终端时,值又消失了。

我还更改了/etc/environment~/.bash_profile 文件,但没有成功。

对于.bash_profile文件,我也有源~/.bash_profile命令

提前感谢您的帮助。

(我需要在 Linux 上使用 sqlplus 的环境变量。如果有人有类似的经验,我很乐意听取您的意见。)

【问题讨论】:

  • 我通过重启虚拟机解决了这个问题。但感谢所有试图帮助我的人。

标签: linux oracle unix environment-variables


【解决方案1】:

我不太喜欢弄乱 profile.d。我在我的 .bash_profile 中进行了更改。不幸的是,您并没有真正准确地显示您在 .bash_profile 中所做的事情。这是我的相关部分。请注意,我依靠 oraenv 来设置我的 PATH、ORACLE_HOME 和 ORACLE_BASE

#----------------------------------------------------------------------
# 3 Aug 2012 - Ed Stevens
#   - replaced hard coded settings of ORACLE_* vars with use of oraenv
#     utility.
export ORACLE_TERM=xterm
export PATH=/usr/local/bin:/usr/sbin:$PATH
export ORACLE_SID=cdb
export ORAENV_ASK=NO
. oraenv
unset ORAENV_ASK


PS1="\n\D{%F} \t\n\u:\$ORACLE_SID\$ "
export PS1

一个更“教科书”的版本:

export PATH=/usr/local/bin:/usr/sbin:$PATH
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/$ORACLE_BASE/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH

我不确定“对于 .bash_profile 文件,我也有 source ~/.bash_profile 命令”是什么意思,如果你说你放置了

~/.bash_profile command

在您的 .bash_profile 中,在我看来,您通过要求文件自行执行创建了一个无限循环。

【讨论】:

  • 1. Oracle-Bin 目录中的 oraenv 文件也仍然用于终端会话。 2. 有趣的是,甚至没有 ~/.bash_profile 文件,所以我只创建了一个,只是为了测试它是否有效。我什至像你写的那样输入了导出行。我希望它能够被 sqlplus 重新调整,并且它是全局设置的,但效果并不好。
  • 再一次,你没有显示任何细节,没有实际的文件内容,没有实际的命令和结果。因此,“没有那么好”是完全没有意义的。我无法建议对我看不到的内容进行更正。
【解决方案2】:

/etc/profile.d/中创建一个脚本,例如ora.sh:

# cat /etc/profile.d/ora.sh
export TMOUT=172800
export SQLPATH=/s
export TNS_ADMIN=/opt/oracle/TNS_ADMIN
export ORACLE_PATH=/s
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/ora19

我在这里设置

  • TMOUT - 用于 SSH 会话
  • SQLPATH 和 ORACLE_PATH - 用于 sqlplus 中使用的脚本目录
  • TNS_ADMIN - 存储了我所有的 TNS 设置(我有多个 tns_name 并使用 IFILE 包含它们)
  • ORACLE_BASE 和 ORACLE_HOME - 用于 oracle base 和当前 oracle home

【讨论】:

  • 什么触发了脚本?我对 Linux 脚本不太熟悉。
猜你喜欢
  • 1970-01-01
  • 2015-11-28
  • 2014-04-23
  • 2021-12-19
  • 1970-01-01
  • 1970-01-01
  • 2022-01-17
相关资源
最近更新 更多