`

oracle10g for linux 4 自动启动及脚本

阅读更多
关于oracle在linux系统下安装后,如何在系统重启的情况下让服务自动启动起来,网上有很多的教程和现成的脚本,这里只是个人工作中的一点经验。

以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

# chkconfig --add oracle

# chkconfig --list oracle

# chkconfig oracle 2345 on

重启系统,就可以在启动的过程中看到 Starting oracle ,因为我们设置的优先级为99,一般是最后启动。[OK]以后就可以了。因为要启动emctl,可能有点慢,等待的时间要稍微长一点。

启动以后可以以root执行oracle start或者oracle stop来启动或停止服务。

转于  http://blog.pconline.com.cn/article/221507.html

分享到:
评论

相关推荐

    oracle10g for linux 安装教程

    #### 二、配置 Oracle 10g 开机自动启动 为了实现 Oracle 10g 数据库服务器在系统启动时自动运行,需要进行以下步骤: ##### 1. 拷贝脚本文件 将 Oracle 10g 的脚本文件拷贝到共享目录 `idtsoftware` 中,然后将其...

    oracle10 for linux 安装

    安装完成后,别忘了进行必要的后安装配置,例如启动Oracle服务、创建数据文件、初始化参数文件(`init.ora`),以及设置启动脚本以确保数据库在系统重启后能自动启动。 在整个过程中,保持与Oracle官方文档的同步,...

    oracle 10g for linux32安装心得

    在安装Oracle 10g for Linux 32位系统时,有一些关键的步骤和注意事项需要遵循,以确保安装过程顺利并使数据库系统稳定运行。以下是对整个安装过程的详细解释: 1. **安装前的系统配置**: - **设置核心参数**:这...

    linux下配置ORACLE 10g自动启动经验分享

    ### Linux 下配置 Oracle 10g 自动启动的详细步骤 #### 一、概述 本文档将详细介绍如何在Linux环境下实现Oracle 10g数据库服务的自动启动。通过以下步骤,用户可以在系统启动时自动运行Oracle 10g的相关服务,从而...

    Oracle10G For Linux 安装步骤

    ### Oracle10G for Linux 安装步骤及数据库创建详解 #### 一、Oracle10G for Linux 软件安装步骤 ##### 1. 用户创建 为了确保Oracle的正常安装与运行,首先需要创建一个特定的用户和组。这一步骤主要涉及到两个...

    oracle 10G for linux常用命令

    Oracle 10G for Linux 的常用命令是数据库管理员在日常管理中不可或缺的工具,这些命令涵盖了数据库的启动、停止、连接、数据导入导出以及监听器管理等多个方面。以下是一些核心命令的详解: 1. **sqlplus**: - `...

    oracle10g_for linux自启动

    在Redhat AS4环境下,确保Oracle 10g在Linux系统重启后能够自动启动,是一项重要的系统管理任务。本文将详细介绍如何通过Oracle自身的脚本来实现这一功能,同时也会提到一些额外的步骤,以确保整个过程顺利进行。 ...

    Oracle 10g的ASM裸设备建库 For Linux

    ### Oracle 10g的ASM裸设备建库For Linux知识点详解 #### 一、概述 在Oracle 10g环境下,使用ASM(Automatic Storage Management)进行数据库管理是一种常见且高效的方式。尤其对于Linux操作系统而言,利用裸设备...

    oracle 10g for linux as3 完全安装手册(截图演示)

    ### Oracle 10g for Linux AS3 完全安装手册知识点总结 #### 一、环境配置与准备 ##### 1.1 操作系统版本确认 - **操作系统**: CentOS 3.6,等同于 Red Hat Enterprise Linux Advanced Server (AS3) Update 6。 - *...

    rhel5_oracle11g开机启动脚本

    为了实现开机自动启动Oracle数据库的目的,需要创建一个系统启动脚本。步骤如下: - 创建名为`ora11g`的脚本文件在`/etc/rc.d/init.d/`目录下。 - 在脚本中定义环境变量如`ORACLE_SID`、`ORACLE_BASE`、`ORACLE_...

    Oracle10g for linux(redhat5)安装以及卸载.pdf

    Oracle 10g在Linux(Red Hat 5)上的安装与卸载是一个涉及多个步骤和技术细节的过程。在开始之前,确保满足适当的硬件和软件要求是至关重要的。 **硬件环境** 对于Oracle 10g的安装,至少需要以下的硬件配置: 1. CPU...

    oracle11g客户端for-linux安装文档.docx

    4. 使用XManager以oracle用户登录并启动安装: 通过XManager连接到服务器,以oracle用户身份登录。进入客户端安装目录,例如`<10 mdsp >ls doc install response runInstaller stage welcome.html`,然后执行`...

    Oracle数据库安装 for linux x86_64

    Oracle数据库在Linux x86...以上内容是根据给定文件信息提炼出的Oracle数据库安装的相关知识点,涵盖了从准备工作到安装完成后的配置和注意事项,为准备在Linux x86_64系统上安装Oracle 11g R2的用户提供了详细的指导。

    Oracle Installation Guide for linux

    《Oracle Database Installation Guide, 11g Release 1 (11.1) for Linux》是针对Oracle数据库11g第一版(11.1)在Linux操作系统上的安装指南。这份文档详细介绍了在Linux环境下安装Oracle 11g R1所需的所有步骤、...

    下载oracle10安装包地址.txt

    根据提供的文件信息,本文将围绕Oracle 10g在Linux 64位系统下的相关知识点进行详细介绍。主要包括以下几个方面: ### 一、Oracle 10g简介 Oracle 10g(Grid Edition)是Oracle公司发布的一个数据库管理系统,它是...

    Oracle Database 11.2g 64bit for Linux x64安装

    ### Oracle Database 11.2g 64bit for Linux x64安装 #### 第一部分:Linux系统要求及配置 **1. 验证Linux软件包安装** 在安装Oracle Database 11.2g 64bit for Linux x64之前,确保Linux系统已安装必要的软件包...

    安装oracle 10g 数据库

    然后,以`root`用户身份运行自动化脚本`prepare_for_oracle_install_as4.sh`,确保脚本具有执行权限(使用`chmod 755`命令)。这个脚本会创建`dba`用户组和`oracle`用户,并设定密码为`oracle`。同时,它还会解压缩...

Global site tag (gtag.js) - Google Analytics