Linux下建立Oracle 11.2.0.1服务及其开机自启动

我的环境变量:
ORACLE_SID=bao
ORACLE_UNQNAME=$ORACLE_SID
ORACLE_BASE=/bao1
ORACLE_HOME=$ORACLE_BASE/oracle

Oracle在$ORACLE_HOME/bin下提供许多对数据库进行操作的脚本,其中dbstart和dbshut可分别用来启动和关闭数据库。注意,这两个脚本已包含监听器的启动或关闭,但并未对EM进行相关的操作。使用如下命令:

/opt/oracle/11g/bin/dbstart /opt/oracle/11g #启动数据库实例(包含监听器) /opt/oracle/11g/bin/dbshut /opt/oracle/11g #关闭数据库实例(包括监听器)

以上命令要成功启动数据库实例还得打开Oracle设置的一个关卡:vi /etc/oratab,修改行:

orcl:/opt/oracle/11g:Y #默认为orcl:/opt/oracle/11g:N

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

1#!/bin/sh 2#chkconfig: 2345 20 80 3#description: Oracle dbstart / dbshut 4#以上两行为chkconfig所需 5ORA_HOME=/baofoo1/oracle 6ORA_OWNER=oracle 7LOGFILE=/baofoo1/oracle/startup.log 8echo "#################################" >> ${LOGFILE} 9date +"### %T %a %D: Run Oracle" >> ${LOGFILE} 10if [ ! -f ${ORA_HOME}/bin/dbstart ] || [ ! -f ${ORA_HOME}/bin/dbshut ]; then 11    echo "Error: Missing the script file ${ORA_HOME}/bin/dbstart or ${ORA_HOME}/bin/dbshut!" >> ${LOGFILE} 12    echo "#################################" >> ${LOGFILE} 13    exit 14fi 15start(){ 16    echo "###Startup Database..." 17    su - ${ORA_OWNER} -c "${ORA_HOME}/bin/dbstart ${ORA_HOME}" 18    echo "###Done." 19} 20stop(){ 21    echo "###Shutdown Database..." 22    su - ${ORA_OWNER} -c "${ORA_HOME}/bin/dbshut ${ORA_HOME}" 23    echo "###Done." 24} 25case "$1" in 26    'start') 27        start >> ${LOGFILE} 28    ;; 29    'stop') 30        stop >> ${LOGFILE} 31    ;; 32    'restart') 33        stop >> ${LOGFILE} 34        start >> ${LOGFILE} 35    ;; 36esac 37date +"### %T %a %D: Finished." >> ${LOGFILE} 38echo "#################################" >> ${LOGFILE} 39echo ""

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

chmod a+x /etc/init.d/oracle

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

/etc/init.d/oracle start #启动oracle(包括数据库实例、监听器、EM) /etc/init.d/oracle stop #关闭oracle /etc/init.d/oracle restart #重启oracle

将 oracle 添加到 chkconfig中:

chkconfig --add oracle

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

1chkconfig | grep oracle #查看oracle服务的开机启动级别 2chkconfig --level 24 oracle off #修改oracle服务的开机启动级别 3chkconfig --level 35 oracle on

至此可使用如下命令对oracle的启动或关闭进行管理

1service oracle start #启动 2service oracle stop #关闭 3service oracle restart #重启

 建立连接:

ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle   #关机执行 ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle   #重启执行
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

RAC环境单实例启动数据库收到ORA

     在RAC环境中,如果你在没有启动节点的集群服务的情况下单实例启动数据库,将收到类似如下的报错:\oracle@rhel1u01\$sqlSQL\Plus:Release10.2.0.5.0ProductiononTueApr215:00:272013Copyright(