使用如下命令查看Oracle相关服务是否已启动:

ps aux | grep ora_ #若无ora_**_**相关的进程,则oracle数据库实例未启动

netstat -tlnup | grep 1521 #若无任何显示,则监听器未启动

lsnrctl status #查看监听器状态

netstat -tlnup | grep 1158 #若无任何显示,则EM未启动

emctl status dbconsole #查看EM状态

1.启动数据库实例还得打开Oracle设置的一个关卡:vi /etc/oratab,修改行:

[root@localhost ~]# vi /etc/oratab

# orcl:/u01/app/oracle/product/11.2.0/db_1:N

orcl:/u01/app/oracle/product/11.2.0/db_1:Y

2.在linux 的/etc/init.d/ 添加oracle 服务,以root身份建立开机启动oracle服务的脚本:vi /etc/init.d/oracle,添加如下脚本:

[root@localhost ~]# su - oracle

[oracle@localhost ~]$ echo $ORACLE_HOME

/u01/app/oracle/product/11.2.0/db_1

[oracle@localhost ~]$ su - root

密码:

[root@localhost ~]# touch /var/log/oracle.log

[root@localhost /]# vi /etc/init.d/oracle

#!/bin/sh$

#chkconfig: 2345 20 80

#description: Oracle dbstart / dbshut

# It is that is needed for chkconfig 

ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1

ORA_OWNER=oracle

LOGFILE=/var/log/oracle.log

echo "#################################" >> ${LOGFILE}

date +"### %T %a %D: Run Oracle" >> ${LOGFILE}

if [ ! -f ${ORACLE_HOME}/bin/dbstart ] || [ ! -f ${ORACLE_HOME}/bin/dbshut ]; then

    echo "Error: Missing the script file ${ORACLE_HOME}/bin/dbstart or ${ORACLE_HOME}/bin/dbshut!" >> ${LOGFILE}

    echo "#################################" >> ${LOGFILE}

    exit

fi

start(){

    echo "###Startup Database..."

    su - ${ORA_OWNER} -c "${ORACLE_HOME}/bin/dbstart ${ORACLE_HOME}"

    echo "###Done."

    echo "###Run database control..."

    su - ${ORA_OWNER} -c "${ORACLE_HOME}/bin/emctl start dbconsole"

    echo "###Done."

}

stop(){

    echo "###Stop database control..."

    su - ${ORA_OWNER} -c "${ORACLE_HOME}/bin/emctl stop dbconsole"

    echo "###Done."

    echo "###Shutdown Database..."

    su - ${ORA_OWNER} -c "${ORACLE_HOME}/bin/dbshut ${ORACLE_HOME}"

    echo "###Done."

}

case "$1" in

    'start')

        start >> ${LOGFILE}

    ;;

    'stop')

        stop >> ${LOGFILE}

    ;;

    'restart')

        stop >> ${LOGFILE}

        start >> ${LOGFILE}

    ;;

esac

date +"### %T %a %D: Finished." >> ${LOGFILE}

echo "#################################" >> ${LOGFILE}

echo ""

oracle服务器启动脚本

2.1使用如下命令将 /etc/init.d/oracle 置为可执行文件:

  [root@localhost /]# chmod a+x /etc/init.d/oracle

2.2至此,可使用如下命令对oracle进行启动和关闭:

  [root@localhost /]# /etc/init.d/oracle start

  [root@localhost /]# /etc/init.d/oracle stop

  [root@localhost /]# /etc/init.d/oracle restart

3.将oracle服务 添加到 chkconfig中,设置为系统服务:

  [root@localhost /]# chkconfig --add oracle

  [root@localhost /]# chkconfig | grep oracle

  oracle        0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

3.1使用如下命令查看和设置oracle服务的开机启动级别:

  [root@localhost /]# chkconfig --level 24 oracle off  #修改oracle服务的开机启动级别

  [root@localhost /]# chkconfig --level 35 oracle on  #修改oracle服务的开机启动级别

4.至此,所添加的服务已经作为linux中的服务了,可使用如下命令对oracle的启动或关闭进行管理:

  [root@localhost /]# service oracle stop

  [root@localhost /]# service oracle start

5.建立连接:

  [root@localhost /]# ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle  #关机执行

  [root@localhost /]# ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle  #重启执行

5.1 rc.d说明:

  [root@localhost ~]# ls /etc/rc.d/
  init.d  rc0.d  rc1.d  rc2.d  rc3.d  rc4.d  rc5.d  rc6.d

  0 - 停机 
  1 - 单用户模式 
  2 - 多用户,但是没有NFS ,不能使用网络 
  3 - 完全多用户模式,我最喜欢的模式 
  4 - “打酱油” 模式,没有用到 
  5 - X11   桌面模式
  6 - 重新启动 (如果将默认启动模式设置为6,Linux将会不断重启)

  rc#.d       其中#代表系统运行级别

Linux 环境下开机自启动Oracle服务的更多相关文章

  1. Centos7 环境下开机 自启动服务(service) 设置的改变 (命令systemctl 和 chkconfig用法区别比较)

    参考文章:  <Linux 设置程序开机自启动 (命令systemctl 和 chkconfig用法区别比较)> http://blog.csdn.net/kenhins/article/ ...

  2. iServer-Linux环境下开机自启动实现

    备注:该方案的前提是linux环境下已经安装部署好了iServer 1.在/etc/init.d/目录下创建iserver服务脚本文件. [root@localhost /]# vim /etc/in ...

  3. 在Linux环境下设置ArcGIS Server 服务开机自启

    在 VMware 11.0 中安装了CentOS 6.5的Linux系统中部署ArcGIS Server,安装完后默认开机不自动启动此服务,每次开机都要手动启动(如下图所示),这样太麻烦.本文记录了设 ...

  4. Linux环境下安装配置vsftpd服务(三种认证模式)

    一.FTP简介 文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议.它工作于网络传输协议的应用层,使用客户/服务器模式,主要是用来 ...

  5. linux 系统下开机自动启动oracle 监听和实例 (亲测有效)

    [oracle@oracle11g ~]$ dbstartORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listene ...

  6. 在Linux环境下的对启动服务进行停止或在运行

    下面我以elasticsearch服务为例进行: 第一种: 1.前台运行: 运行结果 2.ctrl+c停止运行   第二种:后端运行 1.后端运行的命令./elasticsearch -d 这种启动后 ...

  7. linux环境下安装oracle步骤和自启动oracle

    oracle安装步骤 一.创建用户 --注释-- /etc/passwd 用户配置文件 /etc/shadow 用户密码文件 /etc/group 组 组用户文件/etc/gshadow 组密码文件 ...

  8. 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】

    安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...

  9. 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】

    <ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...

随机推荐

  1. Word embedding blog

    http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/ https://www.quora.com/What-is-the-def ...

  2. Java 中的数组操作

    前言 在Java中,有很多封装好的类可以用来操纵数组(排序,复制等等),使得数组使用起来非常的方便.这就是高级语言带来的好处. 代码示例 - 一维数组 package test; import jav ...

  3. iOS7中如何去除UINavigationbar下边的那条黑线

    做项目过程中遇到要去掉导航栏下面的一条黑线,从网上找到的一个方法 默认UINavigationbar样式 准备用于替换的背景 替换后的效果 if ([self.navigationController ...

  4. 增加mvc:resources后访问不了注解配置的controller的问题

    刚开始没有配置mvc:resourcescontroller能够正确访问,但是由于web.xml使用/拦截了所有的请求,所以静态资源访问不上增加mvc:resources之后,静态资源是能访问上了,但 ...

  5. Android开发优化

    一:Android性能优化之渲染篇 1.双层LinearLayout重叠用一个RelatayLout替代布局 二:Android性能优化之运算篇 1.float比较时间是int的4倍,尽量使用int类 ...

  6. Spring MVC数组绑定

    需求:商品批量删除,用户在页面选择多个商品,批量删除. 关键:将页面选择(多选)的商品id,传到controller方法的形参,方法形参使用数组接收页面请求的多个商品id // 批量删除 商品信息 @ ...

  7. c 深度剖析 3

    1 typedef 和 define 的区别 #define是简单的替换;    typedef是别名! 1 2 #define pchar char * pchar a,b;//展开后 char * ...

  8. 【转】 WebService到底是什么?

    WebService到底是什么? http://blog.csdn.net/wooshn/article/details/8069087/

  9. codevs3872 邮递员送信(SPFA)

    邮递员送信 时间限制: 1 Sec  内存限制: 64 MB提交: 10  解决: 5[提交][状态][讨论版] 题目描述 有一个邮递员要送东西,邮局在节点1.他总共要送N-1样东西,其目的地分别是2 ...

  10. 带百分号的数据转json

    今天处理前后数据传输的时候遇到了问题. 前台拼参数是这样写的 '&rowData=' + JSON.stringify(rowData); 后台解析出的对象却总是null,而且没有抛Parse ...