`

Linux 下Oracle11g 自动启动

 
阅读更多

安装完毕 Oracle 11g 每次都得手动启动 | 停止数据库(dbstart | dbshut)、监听器(lsnrctl)、控制(emtcl)。 

设置一下,若手动启动数据库的同时监听器没有启动(即启动数据库时自动启动监听器,停止数据库时停止监听器),则需要修改 dbstart  脚本文件

[root@oracle bin]# vi dbstart

找到此段话,在最前端

# First argument is used to bring up Oracle Net Listener
ORACLE_HOME_LISTNER=$1      
//需要将此处的 ORACLE_HOME_LISTNER=$1 修改为 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

同样,也需要修改 dbshut

[root@oracle bin]# vi dbshut

# The  this to bring down Oracle Net Listener
ORACLE_HOME_LISTNER=$1
//需要将此处的 ORACLE_HOME_LISTNER=$1 修改为 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

在启动了Linux系统之后,转到  /etc/init.d  目录下;

[root@oracle ~]# cd /etc/init.d

       使用 vi 命令,新建一个以 oracle 命名的文件(并将以下代码复制至文件中)

[root@oracle init.d]# vi oracle

#!/bin/sh
# chkconfig: 345 61 61
# description: Oracle 11g AutoRun Services
# /etc/init.d/oracle
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=iboxpay
export PATH=$PATH:$ORACLE_HOME/bin

ORA_OWNR="oracle"

# if the executables do not exist -- display error

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
     echo "Oracle startup: cannot start"
     exit 1
fi

# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display

case "$1" in
 start)
     # Oracle listener and instance startup
     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
     echo "Oracle Start Succesful!OK."
     ;;
 stop)
     # Oracle listener and instance shutdow

       在编辑完成之后,使用 :x  命令保存此文件。

赋予执行权限

[root@myhome init.d]# chmod 750 /etc/init.d/oracle

链接:

[root@myhome init.d]# ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle

[root@myhome init.d]# ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle

执行以下命令:

[root@myhome init.d]# chkconfig --level 345 oracle on

[root@myhome init.d]# chkconfig --add oracle         //添加到服务里

 

 

 

注解

 

linux中chkconfig命令详解 

 

chkconfig:
    chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。
语法:
    chkconfig --list [name]
    chkconfig --add name
    chkconfig --del name
    chkconfig [--level levels] name <on|off|reset>
    chkconfig [--level levels] name

    chkconfig 没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。
    --level选项可以指定要查看的运行级而不一定是当前运行级。
    需要说明的是,对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。

    chkconfig --list :显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
    chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
    chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
    chkconfig [--level levels] name <on|off|reset>:设置某一服务在指定的运行级是被启动,停止还是重置。例如,要在3,4,5运行级停止nfs服务,则命令如下:
    chkconfig --level 345 nfs off
运行级文件:
    每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

附加介绍一下Linux系统的运行级的概念:
    Linux中有多种运行级,常见的就是多用户的2,3,4,5 ,很多人知道5是运行X-Windows的级别,而0就是关机了。运行级的改变可以通过init命令来切换。例如,假设你要维护系统进入单用户状态,那么,可以使用init1来切换。在Linux的运行级的切换过程中,系统会自动寻找对应运行级的目录/etc/rc[0-6].d下的K和S开头的文件,按后面的数字顺序,执行这些脚本。对这些脚本的维护,是很繁琐的一件事情,Linux提供了chkconfig命令用来更新和查询不同运行级上的系统服务

 

分享到:
评论

相关推荐

    Linux 下设置oracle 10g 自动启动服务

    ### Linux 下设置 Oracle 10g 自动启动服务 #### 方法一:通过配置 `/etc/rc.d/init.d/` 目录下的服务文件实现自动启动 1. **创建服务文件** 在 `/etc/rc.d/init.d/` 目录下创建一个名为 `oracle10g` 的文件,并...

    Linux下Oracle 10g安装

    在Linux环境下安装Oracle数据库10g是一项复杂但必要的任务,对于数据库管理员(DBA)和想要学习如何在Linux平台上安装和配置Oracle数据库的IT专业人员来说,这是一项基础技能。以下是在Linux上安装Oracle 10g的详细...

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

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

    linux下oracle服务监听开始自动启动

    ### Linux下Oracle服务与监听器自动启动配置详解 在企业级应用环境中,Oracle数据库系统作为核心数据管理平台,其稳定性和可用性至关重要。为了确保Oracle服务(包括数据库服务和监听器)能够在Linux操作系统启动时...

    Linux下oracle11g

    在Linux环境下安装Oracle 11g数据库是一个涉及多个步骤的过程,确保系统环境、依赖库、内核参数和用户权限都得到妥善配置。以下是对这个过程的详细解析: 首先,你需要从官方下载Oracle 11g的安装包,确保下载的...

    linux之oracle10g安装

    在Linux环境下安装Oracle 10g是一项技术性强且步骤繁多的任务。Oracle 10g是一款功能强大的关系型数据库管理系统,常用于企业级的数据存储和处理。以下将详细阐述安装过程中涉及的关键知识点。 首先,安装前准备是...

    设置oracle10g自动启动

    在Redhat Linux环境中设置Oracle 10g数据库自动启动是一项重要的系统管理任务,这确保了在服务器重启后,Oracle数据库能够自动恢复并提供服务。Oracle 10g是一款广泛使用的数据库管理系统,尤其在企业级应用中,其...

    Linux安装Oracle11g

    在Linux系统上安装Oracle 11g是一项技术性较强的任务,需要遵循一系列步骤来确保数据库的正确配置和稳定运行。以下是对安装过程的详细说明: 首先,为了安全和权限管理,你需要在Linux环境下创建一个新的用户组和...

    linux下安装oracle11g

    在Linux环境下安装Oracle 11g是一项复杂而关键的任务,因为Oracle数据库系统是企业级的,需要满足特定的系统需求和配置要求。以下是对安装过程的详细解释: 首先,确保你的Linux服务器符合基本的系统要求。对于...

    Linux安装Oracle11g.zip

    在Linux系统上安装Oracle 11g是一项技术性较强的任务,涉及到多个步骤和注意事项。首先,让我们了解一下Oracle 11g的基本信息。Oracle 11g是Oracle公司的一款企业级数据库管理系统,它提供了高性能、高可用性和安全...

    oracle 10g for linux

    在Linux环境下安装Oracle 10g需要遵循一定的步骤,并且对系统资源有一定的要求。本文将详细介绍如何在Linux系统上安装Oracle 10g,并提供必要的系统检查、环境配置和参数调整。 首先,确保你的Linux系统满足最低的...

    linux下安装oracle11g步骤.doc

    在Linux环境下安装Oracle 11g数据库是一项技术性较强的任务,尤其在32位系统上。下面是基于REDHAT LINUX 5.1的详细步骤: 首先,确保已经安装了Oracle 11g所需的所有RPM包。这些包包括binutils、compat-libstdc++-...

    linux64上安装oracle11g_完整版

    在Linux 64位系统上安装Oracle 11g是一项相对复杂但重要的任务,因为Oracle数据库是许多企业级应用的关键组件。以下是对整个安装过程的详细说明: 首先,确保操作系统是支持Oracle 11g的Linux 64位版本。然后,以...

    linux下的oracle11G的安装步骤及自启动的配置

    在Linux环境下安装Oracle 11G数据库是一个复杂的过程,涉及到多个步骤和系统配置。以下是详细的安装及自启动配置过程: 1. **环境检查与依赖安装**: 首先,确保系统已安装了必要的开发工具和软件包,如GCC、...

    Linux 安装 Oracle 11g所需要包

    在Linux系统上安装Oracle 11g是一项技术性较强的任务,需要对操作系统和数据库软件有深入的理解。"rpm5.10 for oracle11g"这个压缩包文件名称表明它包含的是RPM(Red Hat Package Manager)格式的软件包,主要用于在...

    linux下创建oracle10G实例及自动启动方法

    linux中安装了数据库之后机器重启之后,会提示数据库无法使用的问题,主要是一些环境参数没有设置的原因,设置好环境参数之后以后oracle数据实例就会随着linux系统启动而自动启动。

    Oracle 11G 在linux环境下的卸载操作

    下面详细讲述Oracle 11G在Linux环境下卸载操作中的关键知识点: 1. 关闭数据库实例 在开始卸载前,首先需要确保数据库实例已经安全关闭。这一步骤是通过Oracle提供的SQL*Plus工具来完成。具体命令如下: - 启动SQL*...

    linux下oracle手动建实例

    ### Linux 下 Oracle 手动建实例详解 #### 一、概述 在Linux环境中手动构建Oracle实例是一项高级且复杂的任务,通常适用于需要定制化配置或特殊需求的场景。本文档将根据给定的信息,详细介绍如何在Linux环境下手动...

    linux下安装oracle11g所需rpm大全

    在Linux环境下安装Oracle 11g数据库是一项技术性较强的任务,需要确保系统满足所有必要的先决条件,并且正确地配置了所有的依赖项。RPM(Red Hat Package Manager)是Linux系统中广泛使用的软件包管理器,它使得安装...

Global site tag (gtag.js) - Google Analytics