1、 修改Oracle系统配置文件/etc/oratab

/etc/oratab 格式为: SID:ORACLE_HOME:AUTO

把AUTO域设置为Y(大写),只有这样,oracle 自带的dbstart和dbshut才能够发挥作用。我的为:ora10g:/home/oracle/products/10.2.0:Y

当然也可以不用oracle的脚本,本例采用自己写的脚本,所以这一步可以略过。

2、 服务脚本:(命名为oracle)

如下

#!/bin/bash

#

#

# Created by chenyongrui 2006-05-09

#

case "$1" in

start)

echo "Starting Oracle Databases ... "

echo "-------------------------------------------------" >> /var/log/oracle

date +" %T %a %D : Starting Oracle Databasee as part of system up." >> /var/log/oracle

echo "-------------------------------------------------" >> /var/log/oracle

su - oracle -c "dbstart" >> /var/log/oracle (注 此处把我写的启动脚本替换dbstart)

echo "Done."

echo "Starting Oracle Listeners ... "

echo "-------------------------------------------------" >> /var/log/oracle

date +" %T %a %D : Starting Oracle Listeners as part of system up." >> /var/log/oracle

echo "-------------------------------------------------" >> /var/log/oracle

su - oracle -c "lsnrctl start" >> /var/log/oracle

echo "Done."

echo ""

echo "-------------------------------------------------" >> /var/log/oracle

date +" %T %a %D : Finished." >> /var/log/oracle

echo "-------------------------------------------------" >> /var/log/oracle

touch /var/lock/subsys/oracle

;;

stop)

echo "Stoping Oracle Listeners ... "

echo "-------------------------------------------------" >> /var/log/oracle

date +" %T %a %D : Stoping Oracle Listener as part of system down." >> /var/log/oracle

echo "-------------------------------------------------" >> /var/log/oracle

su - oracle -c "lsnrctl stop" >> /var/log/oracle

echo "Done."

rm -f /var/lock/subsys/oracle

echo "Stoping Oracle Databases ... "

echo "-------------------------------------------------" >> /var/log/oracle

date +" %T %a %D : Stoping Oracle Databases as part of system down." >> /var/log/oracle

echo "-------------------------------------------------" >> /var/log/oracle

su - oracle -c "dbshut" >>/var/log/oracle (注 此处把我写的关闭脚本替换dbshut)

echo "Done."

echo ""

echo "-------------------------------------------------" >> /var/log/oracle

date +" %T %a %D : Finished." >> /var/log/oracle

echo "-------------------------------------------------" >> /var/log/oracle

;;

restart)

$0 stop

$0 start

;;

*)

echo "Usage: oracle {start|stop|restart}"

exit 1

esac

将脚本命名为oracle,保存在/etc/rc.d/init.d下,当然也可使用其他名字,最后服务名跟着改变就可。

改变文件属性为:chmod 755 oracle

3、建立服务连接:

系统启动时启动数据库,我们需要以下连结∶

$ ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle

$ ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle

$ ln -s ../init.d/oracle /etc/rc.d/rc5.d/S99oracle

注:此处只考虑在2 3 5三种运行方式下有效

要在重新启动时停止数据库,我们需要以下连结∶

$ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle # 停止

$ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle # 重新启动

当然我们也可以使用chkconfig来增加oracle服务,具体实现如下

# cd /etc/rc.d/init.d/

# chkconfig --add oracle

# chkconfig --list oracle

oracle 0:0 ff 1:0 ff 2:0 ff 3:0 n 4:0 n 5:0 n 6:0 ff

linux系统启动默认运行级别是5,所以runleve0是halt, runlevel6是reboot。 要在关机前执行脚本,单纯的将写好的脚本加到服务里是不行的,在halt或reboot时,系统会检查/var/lock/subsys下有没有跟以K开头的服务名一样的文件,如果有的话才会执行对应的脚本。所以系统启动是需要在/var/lock/subsys下创建跟服务名一样的文件,系统关机时才会执行服务的K脚本。

如果服务启动了,但是没有在/var/lock/subsys下创建对应的文件,系统关机时也不会执行服务对应的K脚本的,系统执行S和K脚本的条件可以看一下/etc/rc.d/rc脚本,

rc This file is responsible for starting/stopping

# services when the runlevel changes.[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8570952/viewspace-910635/,如需转载,请注明出处,否则将追究法律责任。

linux oracle停启,linux下Oracle自动启动与停止总结相关推荐

  1. linux下oracle导出12705,llinux下Oracle数据库的单个表导出导入

    昨晚又是一个晚睡之夜,Oracle数据库,真是不熟,操作也仅限简单的导出导入,建库等!其实只是一个很简单的问题,却一度让我沉思..下面就写下处理过程,供大家参考! 事情的原委是这样:用户的库,要在一个 ...

  2. centos配置oracle自启,centos 下配置oracle11gR2开机自启

    这里使用的环境是 CentOS 6.6 ,并且已经装好了oracle11gR2 oracle启动分为两个步骤: 1.启动监听 2.启动服务 1.root 用户下修改ORATAB(将N该为Y): [ro ...

  3. centos 7 如何验证oracle安装成功_linux下Oracle数据的安装详解

    第二章:CentOS下Oracle用户环境配置和Oracle11g的安装: 1.下载Oracle安装包: linux.x64_11gR2_database_1of2.zip 和 linux.x64_1 ...

  4. windows下oracle启动流程,windows下oracle的启动

    windows下Oracle的启动一般是伴随windows自动启动,自动关闭的.但是如果使用任务管理器杀掉了Oracle进程,可以通过命令行方式启动和关闭oracle. 启动oracle服务:C:Do ...

  5. aix下oracle备份脚本,AIX下oracle的自动备份

    1. 建立自动备份的脚本文件: 备份计划为:每周为一个循环,每周的每一天的夜里12:00执行备份,备份文件为7个,分别是周一到周日的数据文件,只保留最近一周的文件: 脚本文件如下: 文件名:backu ...

  6. 怎样一步一步删除(linux amp; UNIX)环境下 oracle 11g 集群节点

     Deleting a Cluster Node on Linux and UNIX Systems 1.确定要删除的节点,是否active,pinned $ olsnodes -s -t 假设 ...

  7. oracle停数据库服务器,优化Oracle停机时间及数据库恢复

    优化Oracle停机时间及数据库恢复 作者:网络 佚名 2006-02-22 00:00 评论 分享 [IT168 服务器学院]这里会讨论令Oracle停机时间最小化的步骤.各种形式的停机--计划的或 ...

  8. unix oracle数据库启用,UNIX下ORACLE数据库的创建

    oracle|unix|创建|数据|数据库 创建数据库虽说是一件很平常的工作,在ORACLE的参考文档中也有一定的描述,但现实中确有很多人都不会,一方面是因为平时很少有这样的机会让你去做,而真有了这样 ...

  9. oracle停监听服务,ORACLE监听服务启动后又停止了的解决

    ORACLE监听服务启动后又停止了的解决 今天碰到的问题: 首先,连接数据库时报错:"Io 异常: The Network Adapter could not establish the c ...

最新文章

  1. python语言能干什么-python语言能做什么
  2. ME2N标准报表中加EKKO/EKPO中没显示的字段
  3. 服务器ping不通的解决办法之阿里云云服务器VNC报错Failed to execute /sbin/init
  4. Pycharm 2018 1.2版本 Mac注册码激活码
  5. zookeeper3.3.6 伪分布式安装
  6. R语言可视化学习笔记之ggrepel包
  7. 怎么把网页保存成pdf格式-最简单操作
  8. java列举生活中类和对象_趣味解读Python面向对象编程 (类和对象)
  9. list集合练习----斗地主
  10. three doors
  11. 【054】七麦数据-应用商店中详细的应用大数据
  12. Elasticsearch中object类型与nested类型之间的区别
  13. sendcloud php 群发,laravel5.5 使用sendcloud发送邮件
  14. 用矿卡P106升级tensorflow深度学习服务器
  15. Nature:13个维度,手把手教“研究er”如何做学术报告
  16. linux 关闭浏览器,在Linux和Windows下关闭谷歌Chrome浏览器中的通知提醒的方法
  17. iText实现HTML页面导出PDF
  18. 中语言超酷特性 之 --- 逆唤算式
  19. 刨根问底之链表数据结构
  20. 微信生日贺卡html5,生日微信贺卡祝福语_经典快乐生日微信祝福语

热门文章

  1. 【Paper】2015_Leader–follower consensus of linear multi-agent systems with unknown external disturbanc
  2. 2.1 进行误差分析-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
  3. Ardino基础教程 21_LCD1602液晶屏
  4. 聊聊hystrix的execution.isolation.semaphore.maxConcurrentRequests属性
  5. 3.25 for循环
  6. CSharpGL(5)解析3DS文件并用CSharpGL渲染
  7. 用匈牙利算法求二分图的最大匹配
  8. WP8.1学习系列(第一章)——添加应用栏
  9. SpringQuartz定时任务调度器
  10. 设计模式解析学习(一)