oracle脚本刷错了怎么办,dbstart&dbshut脚本中的错误

Oracle提供了两个脚本dbstart和dbshut用来启动和关闭数据库.

这两个脚本首先读取oratab(/etc/oratab)文件来决定哪个数据库是需要自动启动和关闭,然后启动和关闭那些数据库,

oratab文件通过root.sh创建.

[oracle@chicago oracle]$ cat /etc/oratab

#

# This file is used by ORACLE utilities. It is created by root.sh

# and updated by the Database Configuration Assistant when creating

# a database.

# A colon, ':', is used as the field terminator. A new line terminates

# the entry. Lines beginning with a pound sign, '#', are comments.

#

# Entries are of the form:

# $ORACLE_SID:$ORACLE_HOME::

#

# The first and second fields are the system identifier and home

# directory of the database respectively. The third filed indicates

# to the dbstart utility that the database should , "Y", or should not,

# "N", be brought up at system boot time.

#

# Multiple entries with the same $ORACLE_SID are not allowed.

#

#

orcl:/u01/app/oracle/oracle/product/10.2.0/db_1:Y

不过,dbstart/dbshut脚本中都包含有错误.

需要修改ORACLE_HOME_LISTNER=$ORACLE_HOME

[oracle@chicago oracle]$ dbstart

ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener

Usage: /u01/app/oracle/oracle/product/10.2.0/db_1/bin/dbstart ORACLE_HOME

[oracle@chicago oracle]$ vi $ORACLE_HOME/bin/dbstart

:

#

# $Id: dbstart.sh.pp 25-may-2005.14:52:00 vikrkuma Exp $

# Copyright (c) 1991, 2005, Oracle. All rights reserved.

#

###################################

#

# usage: dbstart $ORACLE_HOME

#

# This script is used to start ORACLE from /etc/rc(.local).

# It should ONLY be executed as part of the system boot procedure.

#

# This script will start all databases listed in the oratab file

# whose third field is a "Y". If the third field is set to "Y" and

# there is no ORACLE_SID for an entry (the first field is a *),

# then this script will ignore that entry.

#

# This script requires that ASM ORACLE_SID's start with a +, and

# that non-ASM instance ORACLE_SID's do not start with a +.

#

# If ASM instances are to be started with this script, it cannot

# be used inside an rc*.d directory, and should be invoked from

# rc.local only. Otherwise, the CSS service may not be available

# yet, and this script will block init from completing the boot

# cycle.

#

# If you want dbstart to auto-start a single-instance database that uses

# an ASM server that is auto-started by CRS (this is the default behavior

# for an ASM cluster), you must change the database's ORATAB entry to use

# a third field of "W" and the ASM's ORATAB entry to use a third field of "N".

# These values specify that dbstart auto-starts the database only after

# the ASM instance is up and running.

#

# Note:

# Use ORACLE_TRACE=T for tracing this script.

#

# The progress log for each instance bringup plus Error and Warning message[s]

# are logged in file $ORACLE_HOME/startup.log. The error messages related to

# instance bringup are also logged to syslog (system log module).

# The Listener log is located at $ORACLE_HOME_LISTNER/listener.log

#

# To configure:

# 1) Set ORATAB:

# On Solaris

# ORATAB=/var/opt/oracle/oratab

# All other UNIX platforms

# ORATAB=/etc/oratab

#

# 2) Update $ORATAB/oratab with Database Instances that need to be started up.

# Entries are of the form:

# $ORACLE_SID:$ORACLE_HOME::

# An example entry:

# main:/usr/lib/oracle/emagent_10g:Y

#

# Overall algorithm:

# 1) Bring up all ASM instances with 'Y' entry in status field in oratab entry

# 2) Bring up all Database instances with 'Y' entry in status field in

# oratab entry

# 3) If there are Database instances with 'W' entry in status field

# then

# iterate over all ASM instances (irrespective of 'Y' or 'N') AND

# wait for all of them to be started

# fi

# 4) Bring up all Database instances with 'W' entry in status field in

# oratab entry

#

#####################################

LOGMSG="logger -puser.alert -s "

trap 'exit' 1 2 3

# for script tracing

case $ORACLE_TRACE in

T) set -x ;;

esac

# Set path if path not set (if called from /etc/rc)

case $PATH in

"") PATH=/bin:/usr/bin:/etc

export PATH ;;

esac

# Save LD_LIBRARY_PATH

SAVE_LLP=$LD_LIBRARY_PATH

# First argument is used to bring up Oracle Net Listener

ORACLE_HOME_LISTNER=$ORACLE_HOME

if [ ! $ORACLE_HOME_LISTNER ] ; then

echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"

echo "Usage: $0 ORACLE_HOME"

else

LOG=$ORACLE_HOME_LISTNER/listener.log

# Start Oracle Net Listener

if [ -x $ORACLE_HOME_LISTNER/bin/tnslsnr ] ; then

echo "$0: Starting Oracle Net Listener" >> $LOG 2>&1

"/u01/app/oracle/oracle/product/10.2.0/db_1/bin/dbstart" 461L, 13926C written

[oracle@chicago oracle]$ dbstart

Processing Database instance "orcl": log file /u01/app/oracle/oracle/product/10.2.0/db_1/startup.log

[oracle@chicago oracle]$ dbshut

ORACLE_HOME_LISTNER is not SET, unable to auto-stop Oracle Net Listener

Usage: /u01/app/oracle/oracle/product/10.2.0/db_1/bin/dbshut ORACLE_HOME

Processing Database instance "orcl": log file /u01/app/oracle/oracle/product/10.2.0/db_1/shutdown.log

[oracle@chicago oracle]$ vi $ORACLE_HOME/bin/dbshut

:

#

# $Id: dbshut.sh.pp 11-may-2005.19:37:00 vikrkuma Exp $

# Copyright (c) 1991, 2005, Oracle. All rights reserved.

#

###################################

#

# usage: dbshut $ORACLE_HOME

#

# This script is used to shutdown ORACLE from /etc/rc(.local).

# It should ONLY be executed as part of the system boot procedure.

#

# This script will shutdown all databases listed in the oratab file

# whose third field is a "Y" or "W". If the third field is set to "Y" and

# there is no ORACLE_SID for an entry (the first field is a *),

# then this script will ignore that entry.

#

# This script requires that ASM ORACLE_SID's start with a +, and

# that non-ASM instance ORACLE_SID's do not start with a +.

#

# Note:

# Use ORACLE_TRACE=T for tracing this script.

# Oracle Net Listener is also shutdown using this script.

#

# The progress log for each instance shutdown is logged in file

# $ORACLE_HOME/shutdown.log.

#

# To configure:

# 1) Set ORATAB:

# On Solaris

# ORATAB=/var/opt/oracle/oratab

# All other UNIX platforms

# ORATAB=/etc/oratab

#

# 2) Update $ORATAB/oratab with Database Instances that need to be shutdown.

# Entries are of the form:

# $ORACLE_SID:$ORACLE_HOME::

# An example entry:

# main:/usr/lib/oracle/emagent_10g:Y

#

# Note:

# Use ORACLE_TRACE=T for tracing this script.

# Oracle Net Listener is NOT shutdown using this script.

#

# The progress log for each instance shutdown is logged in file

# $ORACLE_HOME/shutdown.log.

#

# To configure:

# 1) Set ORATAB:

# On Solaris

# ORATAB=/var/opt/oracle/oratab

# All other UNIX platforms

# ORATAB=/etc/oratab

#

# 2) Update $ORATAB/oratab with Database Instances that need to be shutdown.

# Entries are of the form:

# $ORACLE_SID:$ORACLE_HOME::

# An example entry:

# main:/usr/lib/oracle/emagent_10g:Y

#

#####################################

trap 'exit' 1 2 3

case $ORACLE_TRACE in

T) set -x ;;

esac

# Set path if path not set (if called from /etc/rc)

case $PATH in

"") PATH=/bin:/usr/bin:/etc

export PATH ;;

esac

# Save LD_LIBRARY_PATH

SAVE_LLP=$LD_LIBRARY_PATH

# The this to bring down Oracle Net Listener

ORACLE_HOME_LISTNER=$ORACLE_HOME

if [ ! $ORACLE_HOME_LISTNER ] ; then

echo "ORACLE_HOME_LISTNER is not SET, unable to auto-stop Oracle Net Listener"

echo "Usage: $0 ORACLE_HOME"

else

LOG=$ORACLE_HOME_LISTNER/listener.log

# Stop Oracle Net Listener

if [ -f $ORACLE_HOME_LISTNER/bin/tnslsnr ] ; then

"/u01/app/oracle/oracle/product/10.2.0/db_1/bin/dbshut" 246L, 6592C written

[oracle@chicago oracle]$ dbstart

Processing Database instance "orcl": log file /u01/app/oracle/oracle/product/10.2.0/db_1/startup.log

[oracle@chicago oracle]$ dbshut

Processing Database instance "orcl": log file /u01/app/oracle/oracle/product/10.2.0/db_1/shutdown.log

[oracle@chicago oracle]$

来自:http://benbo.itpub.net/post/26034/311306

posted on 2008-05-02 17:30 狼爱上狸 阅读(1964) 评论(3)  编辑  收藏 所属分类: LINUX 、ORACLE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值