Friday, May 14, 2010

BUG! “Environment variable ORACLE_UNQNAME not defined”

Environment:
DB version: Oracle 11gr2
Platform: Linux RedHat EL5

今天本來是在做"Automating Database Startup and Shutdown on Linux" setp by step。照著文件做,也處理了最後"Known Issues"的部分後,發現.... Oracle em(dbconsole)的服務並沒有起來...

也不是什麼大問題,就是dbstart這支script裡並沒有把他寫進去而已,於是自己把他補在"/etc/init.d/dbora"(依照上面文件做的一個檔案)裡面:

su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME"
su - $ORA_OWNER -c "$ORA_HOME/bin/emctl start dbconsole” ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^上面這行

補了一行code之後又重機一次,發現竟然還是一樣... 失敗了=   =,如果以oracle的身分直接去跑"emctl start dbconsole"是可以成功的,但是如果一開始是以root的身分切換到oracle去下指令(就是補上的那一行做的事情),會被抱怨:

Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name.

ORACLE_UNQNAME... 還真沒看過這個東西... 結果在oracle文件裡看到這是一個BUG(Bug 1716161)!! 不過他只跟你說,把ORACLE_UNQNAME這個環境變數的值設成db_unique_name這個初始化參數而已... how!?!?

再來看另一篇文章,他也是做一樣的事情,並且在最後一個步驟(6.)說明:
在"/etc/profile"裡補上一段code即可!!

if [ $USER = "oracle" ] ; then
if [ $SHELL = "/bin/ksh" ] ; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
export ORACLE_UNQNAME=db_unique_name
umask 022
fi

真的只是個bug!!!!

Ref:

  1. [ORACLE-BASE] Automating Database Startup and Shutdown on Linux
  2. [Oracle Database Readme] section38 “Open Bugs”
  3. [JOBACLE] Automatic Start/stop in 11g release 2

Comments

0 Responses to "BUG! “Environment variable ORACLE_UNQNAME not defined”"

Post a Comment

Tags