以redhat as4和oracle 10g为例。单机在安装过程依照oracle官方的文档一步步下来,只要设置好参数、安装好必要的包,一般不会出什么问题。安装好了以后系统重启,oracle重启服务,网上很多人建议自己写脚本(其实脚本也很简单),这里讲的是用oracle本身的脚本实现,当然不可避免最后还要写一点点的。
1、配置dbstart和dbshut
在$ORACLE_HOME/bin中,有dbstart和dbshut这两个脚本,more dbstart看一下可以看到:
# # $Id: dbstart.sh.pp 11-may-2005.18:18:07 vikrkuma Exp $ # Copyright (c) 1991, 2005, Oracle. All rights reserved. #
################################### # # usage: dbstart # # 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. # # 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 ...... |
可以看出这个脚本是用来启动oracle服务的,包括listener、instance、asm instances,并且可以放到/etc/rc(.local).,同样dbshut也是起到关闭服务的作用。
配置系统使这个脚本起作用:
1)、以root编辑/etc/oratab,类似 orcl:/u01/product/10.2.0/db_1:N 这种格式,其中orcl是你的ORACLE_SID,/u01/product/10.2.0/db_1是ORACLE_HOME,这里需要把N改为Y,即orcl:/u01/product/10.2.0/db_1:Y这样。
2)、以oracle编辑$ORACLE_HOME/bin/dbstart,找到其中第78行:ORACLE_HOME_LISTNER=改为你自己的路径,或者可以改成ORACLE_HOME_LISTNER=$ORACLE_HOME
保存脚本,以oracle用户运行dbshut和dbstart看是否能关闭、启动数据库。如果不能,一般是参数设置,根据报错找到对应位置更改。
2、把dbstart和dbshut加到redhat启动服务中
经过上一步的配置,可以直接用dbstart命令启动数据listener、instance、asm instances,但是还没有启动oracle10g的EM,ORACLE利用web页面管理数据库相当方便,也是10g的一个特色,所以应该一并启动起该服务来。
$ORACLE_HOME/bin/emctl start dbconsole |
因此我们可以用rc.local或者redhat服务都可以实现要求的开机启动。下面分别说一下:
1)、利用rc.local。直接把dbstart加到rc.local中,实现开机自动启动。这里需要注意的是必须以oracle启动该脚本。
用root编辑/etc/rc.local,添加下面一行:
su - oracle -c "/u01/product/10.2.0/db_1/bin/dbstart" su - oracle -c "/u01/product/10.2.0/db_1/bin/emctl start dbconsole" |
这里/u01/product/10.2.0/db_1需要替换成实际的ORACLE_HOME
保存并退出后,reboot服务器测试一下,可以看到,当系统启动以后oracle监听、实例和em都已经起来了
2)、如果我们不用rc.local,也可以加到redhat服务中。在/etc/rc.d/init.d中添加如下脚本文件,命名为oracle:
#!/bin/sh #chkconfig: 2345 99 01 #description: ORACLE 10g Server
ORACLE_HOME=/u01/product/10.2.0/db_1
if [ ! -f $ORACLE_HOME/bin/dbstart ] then echo "ORACLE cannot start" exit fi
case "$1" in 'start') echo "Starting Oracle Database..." su - oracle -c "$ORACLE_HOME/bin/dbstart" su - oracle -c "$ORACLE_HOME/bin/emctl start dbconsole" ;; 'stop') echo "Stoping Oracle Database" su - oracle -c "$ORACLE_HOME/bin/emctl stop dbconsole" su - oracle -c "$ORACLE_HOME/bin/dbshut" ;; esac |
注意其中两行注释,网上很多脚本因为少了这两行不能使服务自启动:
#chkconfig: 2345 99 01 #description: ORACLE 10g Server |
其中chkconfig:2345 99 01 是指脚本将为运行级2、3、4、5启动oracle 10g服务,启动优先级为99,关闭优先级为01。
然后以root权限:
# cd /etc/rc2.d # ln -s /etc/rc.d/init.d/oracle S99oracle # chkconfig --list oracle # chkconfig --level 2345 on |
重启系统,就可以在启动的过程中看到 Starting oracle,因为我们设置的优先级为99,一般是最后启动。[OK]以后就可以了。因为要启动emctl,可能有点慢,等待的时间要稍微长一点。
启动以后可以以root执行oracle start或者oracle stop来启动或停止服务。
分享到:
相关推荐
Redhat AS4或AS5下oracle10g安装的便捷脚本,可以完成oracle10g图形界面安装前解压缩安装包、创建用户、修改内核参数、修改环境变量等操作,以及安装后设置oracle自启动等操作。
在redhat环境下设置oracle10g开机自动启动
RedHat AS4上安装oracle10g并创建使用oracle数据库RedHat AS4上安装oracle10g并创建使用oracle数据库
RedHat AS4下安装oracle 10g
RedHat AS4 下安装oracle10g.txt
Redhat AS3安装Oracle9i Redhat AS3安装Oracle9i
Redhat linux5.6下Oracle 10g (10.2.0.1)安装及升级到10.2.0.4
一、 RedHat AS4系统安装 二、 Oracle的安装前准备 三、 Oracle10g的安装 四、 测试Oracle10g 数据库 五、 设置oracle自动启动与关闭
redhat as4 u6下安装oracle10g 祥解
一,解压缩Oracle10g的安装文件 1. Oracle 10g(10.1.0.3) (1) 简化过程(以oracle登录,释放安装文件,使用更少的磁盘空间,速度更快) 在安装LINUX时最好分一个区/orasetup,这样一来即使系统坏了,也只是重装系统...
Redhat AS4 Oracle10g+ASM单实例转RAC
redhat as5 oracle10g 安装文档
一. OS环境准备 二. 安装ORACLE之环境准备 三. 手动安装Oracle11gR2 四. Rehat 设置Oracle数据库开机自动启动
redhat4 操作系统环境下安装oracle10g数据库详细步骤,以及常见问题。
RedHat AS4安装oracle10.doc
Redhat6.3单机安装Oracle10g,注明相关缺失包问题。
按照此文档可以很方便的在redhat5.4 下完成安装oracle10g数据库,欢迎下载使用。
在虚拟机redhat linux下安装oracle 10g 教程详解
Linux Redhat AS 5 & Oracle 10G全过程安装配置手册 1. 安装Linxu操作系统 3 2. 安装后的操作系统配置 15 3. ORACLE安装准备 25 4. 安装ORACLE 29
Redhat Linux AS4 安装 Oracle 10g (10.2).