Oracle-oracle_unqname

时间:2018-11-17 13:54:21

标签: oracle centos

我无法运行/etc/init.d/dbora。 通过终端运行时,它报告以下问题:

外壳

  

[root @ localhost init.d]#./dbora start正在启动...正在处理数据库   实例“ ORA11G”:日志文件   /ora01/app/oracle/product/11.2.0/db_1/startup.log环境变量   未定义ORACLE_UNQNAME。请将ORACLE_UNQNAME设置为数据库   唯一的名称。

我的用户Linux:oracle

脚本

  

!/ bin / bash

# versao: 1.0  
export TMP=/tmp
export ORACLE_HOSTNAME=centos7.dbaora.com
export ORACLE_UNQNAME=oracle
export ORACLE_BASE=/ora01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=ORA11G
export ORACLE_OWNER=oracle

PATH=/usr/sbin:$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

alias cdob='cd $ORACLE_BASE'
alias cdoh='cd $ORACLE_HOME'
alias tns='cd $ORACLE_HOME/network/admin'
alias envo='env | grep ORACLE'

umask 022 

start(){
   echo "Starting..."
   su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
   su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"
   touch /var/lock/subsys/dbora
}

stop(){
   echo "Stopping..."
   su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
   su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
   rm -f /var/lock/subsys/dbora
}

restart(){
   stop
   start
}

usage(){
   echo "usage: $0 {start|stop|restart}"
}

if [ `id -u` -ne 0 ]
then
   echo "Este script deve ser executado como root"
   exit
fi

case $1 in
   'start') start;;
   'stop') stop;;
   'restart') restart;;
   *) usage;;
esac

1 个答案:

答案 0 :(得分:1)

ORACLE_UNQNAME是Oracle Enterprise Manager使用的OS环境变量;它支持从一个OEM实例管理多个数据库。

您似乎没有自己设置值,可能是因为您只有一个数据库,所以它已经是唯一的了,对:)不过,您需要给它提供一个不同于oracle的值:{{1 }}是传统的方法,可以解决问题。在Linux中,您可以像其他任何环境变量一样,使用orcl在命令行中进行设置,也可以只更改脚本中的值。