一./etc/oratab说明
直接使用cat 查看这个文件:
gg1:/home/oracle> cat /etc/oratab
#
# This file is used by ORACLEutilities. It is created by root.sh
# and updated by the Database ConfigurationAssistant when creating
# a database.
# A colon, ':', is used as the fieldterminator. A new line terminates
# the entry. Lines beginning with a pound sign, '#', arecomments.
#
# Entries are of the form:
# $ORACLE_SID:$ORACLE_HOME:
#
# The first and second fields are thesystem identifier and home
# directory of the databaserespectively. The third filed indicates
# to the dbstart utility that the databaseshould , "Y", or should not,
# "N", be brought up at systemboot time.
#
# Multiple entries with the same$ORACLE_SID are not allowed.
#
#
gg1:/u01/app/oracle/product/11.2.0.3/db_1:N
这里是我测试环境上的文件,在这个注释里面,对这个文件讲的比较清楚。/etc/oratab 由root.sh 脚本创建,在用DBCA 创建实例时也会更新这个文件。
当$ORACLE_SID:$ORACLE_HOME:
所以配置 数据库自启动和关闭的步骤如下:
(1) 配置/etc/oratab
(2) 修改$ORACLE_HOME/bin/dbstart和dbshut,并将其添加到/etc/rc(.local) 文件中。
这里是使用oracle 自带的dbstart 和dbshut脚本,如果使用自己写的脚本来启动或关闭DB 就不需要关心这个文件的设置了。
二.$ORACLE_HOME/bin/dbstart,dbshut 说明
2.1 dbstart 脚本
gg1:/u01/app/oracle/product/11.2.0.3/db_1/bin>cat dbstart
#!/bin/sh
#
# Copyright (c) 1991, 2008, Oracle. Allrights reserved.
#
###################################
#
# usage: dbstart $ORACLE_HOME
#
# This script is used tostart ORACLE from /etc/rc(.local).
# It should ONLY beexecuted as part of the system boot procedure.
#
# This script will start all databaseslisted in the oratab file
# whose third field is a"Y". If the third field is setto "Y" and
# there is no ORACLE_SID for an entry (thefirst field is a *),
# then this script will ignore that entry.
--这里就是我们之前说的,这个仅启动/etc/oratab 文件中标记为Y的实例。
#
# This script requires that ASMORACLE_SID's start with a +, and
# that non-ASM instance ORACLE_SID's do notstart with a +.
#
# If ASM instances are to be started withthis script, it cannot be used inside an rc*.d directory, and should be invokedfrom rc.local only. Otherwise, the CSS service may not be available yet, andthis script will block init from completing the boot cycle.
--如果是ASM 实例,那么只能从rc.local中调用,否则CSS 服务可能不可用。
#
# If you want dbstart to auto-start asingle-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 thedatabase's ORATAB entry to use
# a third field of "W" and theASM's ORATAB entry to use a third field of "N".
# These values specify that dbstartauto-starts the database only after
# the ASM instance is up and running.
--注意这里的W,其表示等待所有的ASM 实例启动完毕后在启动数据库。
#
# Note:
# Use ORACLE_TRACE=T for tracing thisscript.
#
# The progress log for each instancebringup plus Error and Warning message[s]
# are logged in file $ORACLE_HOME/startup.log.The error messages related to
# instance bringup are also logged tosyslog (system log module).
# The Listener log is located at$ORACLE_HOME_LISTNER/listener.log
--启动日志存放在$ORACLE_HOME/startup.log里。
#
# On all UNIX platforms except SOLARIS
# ORATAB=/etc/oratab
#
# To configure, update ORATAB withInstances that need to be s