Linux 下 Oracle随系统自动启动和关闭

Linux 下实现Oracle随系统自动启动和关闭

实现如下目的:
    a、实现开启oracle实例自启动
    b、关闭操作系统或重启操作系统前能够正常关闭Oracle数据库

a、实现系统启动oracle实例自启动步骤:
1、修改Oracle系统配置文件/etc/oratab内容,将最后一行中最后一个字符的N改为Y

root用户登录修改
#vi /etc/oratab
由如下:
wwl:/oracle/orahome/10.2.0/db_1:N

改为如下并保存退出
wwl:/oracle/orahome/10.2.0/db_1:Y

2、redhat修改/etc/rc.d/rc.local文件,添加如下内容即可:
   suse 修改/etc/init.d/after.local,添加如下内容即可:

#vi /etc/rc.d/rc.local
su -c "dbstart" - oracle

3、切换到oracle用户登录修改$ORACLE_HOME/bin/dbstart,找到ORACLE_HOME_LISTNER=,将值改为ORACLE_HOME的路径,或环境变量。
#su - oracle
$vi $ORACLE_HOME/biin/dbstart

# Set this to bring up Oracle Net Listener
ORACLE_HOME_LISTNER=$ORACLE_HOME   ---就是修改这里哟,用$ORACLE_HOME或绝对路径都可以哟
if [ ! $ORACLE_HOME_LISTNER ] ; then
  echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"
else
  LOG=$ORACLE_HOME_LISTNER/listener.log

  # Start Oracle Net Listener
  if [ -f $ORACLE_HOME_LISTNER/bin/tnslsnr ] ; then
    echo "$0: Starting Oracle Net Listener" >> $LOG 2>&1
    $ORACLE_HOME_LISTNER/bin/lsnrctl start >> $LOG 2>&1 &
    export VER10LIST=`$ORACLE_HOME_LISTNER/bin/lsnrctl version | grep "LSNRCTL for " | cut -d' ' -f5 | cut -d'.' -f1`
  else
    echo "Failed to auto-start Oracle Net Listene using $ORACLE_HOME_LISTNER/bin/tnslsnr"
  fi
fi

b、实现系统关闭oracle实例自关闭步骤:

1、创建k01orashut文件,将su -c "dbshut" - oracle 命令写入该文件
vi /etc/init.d/k01orashut
添加
su -c "dbshut" - oracle

2、修改权限为可执行
#chown 777 /etc/rc.d/init.d/k01orashut

3、进入/etc/rc3.d/目录,创建关机执行命令连接
#ln -s /etc/rc.d/init.d/k01orashut

时间: 2024-07-29 03:31:17

Linux 下 Oracle随系统自动启动和关闭的相关文章

基于Linux下 Oracle 备份策略(RMAN)

基于Linux下 Oracle 备份策略(RMAN) --********************************** -- 基于Linux下 Oracle 备份策略(RMAN) --**********************************       对于 Oracle 数据库的备份与恢复,尽管存在热备,冷备以及逻辑备份之外,使用最多的莫过于使用RMAN进行备份与恢复.而制定RMAN备份策略则是基于数据库丢失的容忍程度,即恢复策略来制定.在下面的备份策略中,给出的是一个通用

linux下oracle自动备份脚本

linux下oracle自动备份脚本  vi /home/oracle/backup.sh   //编写脚本 以下为脚本内容 time=` date +"%Y%m%d%H%M" ` //变量time 获取当前系统时间 su - oracle -c "exp hbskjt_0113/password owner=hbskjt_0113 file=/home/oracle/hbskjt_$time.dmp"  //导库脚本 cd /home/oracle tar zcv

RedHat Linux下Oracle启动脚本的建立 dbstart oracle8.1.6

oracle|脚本 RedHat Linux下Oracle启动脚本的建立 2001-06-05 8:25发布者:Crystal 阅读次数:102 一.修改$ORACLE_HOME/bin/dbstart脚本 首先测试你的$ORACLE/bin/dbstart脚本,如果能正常启动Oracle,请跳到第二部分. 本人运行环境为RedHat7.1+Oracle8.1.6,发现dbstart脚本有问题,不能得到当前运行的Oracle的版本号.编辑dbstart,找到 STATUS=1 if [ "$VE

Linux下oracle如何定时备份并删除几天前的数据

问题描述 Linux下oracle如何定时备份并删除几天前的数据 在linux环境下的,oracle数据的备份删除,应该怎么操作 解决方案 写一个shell脚本就可以,这样可以把数据传输到远程 today td=`date '+%Y%m%d'` backpath=/home/oracle/backup/ backfilename tfile=${backpath}${td}data.sql your backup command .... delete 10 days ago backfile

Linux下Oracle删除用户和表空间的方法_oracle

本文实例讲述了Linux下Oracle删除用户和表空间的方法.分享给大家供大家参考,具体如下: 1.删除某个用户 SQL> conn /as sysdba Connected. SQL> drop user userName cascade; 用户已删除 如果用户无法删除,并报错: ERROR at line 1: ORA-01940: cannot drop a user that is currently connected 通过查看用户的进行,并kill用户进程,然后删除用户. SQL&

LINUX下Oracle数据导入导出的方法详解_oracle

本文讲述了LINUX下Oracle数据导入导出的方法.分享给大家供大家参考,具体如下: 一. 导出工具 exp 1. 它是操作系统下一个可执行的文件 存放目录/ORACLE_HOME/bin exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移   它有三种模式: a.  用户模式: 导出用户所有对象以及对象中的数据: b.  表模式: 导出用户所有表或者指定的表: c.  整个数据库: 导出数据库中所有对象. 2. 导出工具exp交互式命令行方式的使用的例子: $ex

Linux下如何查看系统启动时间和运行时间

Linux下如何查看系统启动时间和运行时间 1.uptime命令输出:16:11:40 up 59 days, 4:21, 2 users, load average: 0.00, 0.01, 0.00 2.查看/proc/uptime文件计算系统启动时间cat /proc/uptime输出: 5113396.94 575949.85第一数字即是系统已运行的时间5113396.94 秒,运用系统工具date即可算出系统启动时间 代码: 全选 date -d "$(awk -F. '{print

Linux下Oracle自动启动脚本

1. 修改Oracle系统配置文件/etc/oratab /etc/oratab 格式为: SID:ORACLE_HOME:AUTO 把AUTO域设置为Y(大写),只有这样,oracle 自带的dbstart和dbshut才能够发挥作用.我的为: ora9i:/home/oracle/ora/products/9.2.0:Y 2. 编写服务脚本: vi /etc/rc.d/init.d #!/bin/bash # #################FUNCTION############# #

ORACLE11g随RHEL5系统自动启动与关闭的设置方法_oracle

写好脚本,注册好服务之后,经测试,ORACLE可以随RHEL启动而启动,但不能随系统关闭而关闭.在网上找答案,发现几乎所有的设置过程帖子都是从同一篇原样照抄过来的,根本就行不通.天下文章一大抄.求助他人,没有得到一个好的解决方案.无奈,自己静下心来慢慢研究分析,总算找到了问题的关键原因所在. 现在就把我的整个成功设置的过程贴出来,供大家参考,以期大家能少走弯路:另外还是要给其他人一个建议:切莫生硬照搬,断章取义,否则其害大焉!! 首先,要在RHEL中设置允许ORACLE系统自动启动,因为默认情况