oracle 11.2.0.3 设置启动脚本使ORACLE自动启动

简介:

Linux下安装完后每次都得通过下面命令来启动对应的服务:

启动服务 dbstart 

启动监视器 lsnrctl start

启动控制台 emctl start dbconsole

本文以Red Hat Enterprise Linux 6.4 (x86_64)+oracle11G为例设置oracle开机自动启动:

方法一:

使用dbstart命令用于启动,具体方法如下

首先修改/etc/oratab文件,将orcl:/u01/app/oracle/product/11.2.0/dbhome_1:N中的N改成Y,然后在/etc/rc.local添加下面几行

1
2
3
su  - oracle -c  '$ORACLE_HOME/bin/dbstart'
su  - oracle -c  '$ORACLE_HOME/bin/lsnrctl start'
su  - oracle -c  '$ORACLE_HOME/bin/emctl start dbconsole'


如果没有设置ORACLE_HOMEH环境变量,用绝对路径取代即可,如/dba/app/oracle/product/..

初次运行dbstart时,一般会有这个报错:

1
su  - oracle -c  "dbstart"

ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener

这个提示说明

启动oracle服务的同时没有启动oracle监听服务,因此如果想在启动oracle服务的同时i启动监听

就需要修改dbstart/dbshut,将ORACLE_HOME_LISTNER值设为$ORACLE_HOME(原来是为$1)

方法二:  

1
vi  /etc/rc . local

把下面的内容加入

1
2
3
4
5
6
7
8
9
su  - oracle -c "
export  ORACLE_SID=orcl
sqlplus  /nolog  <<EOF
connect / as sysdba
startup;
exit ;
EOF"
su  - oracle -c  '$ORACLE_HOME/bin/lsnrctl start'
su  - oracle -c  '$ORACLE_HOME/bin/emctl start dbconsole'


说明下上面脚本:

在shell脚本中,通常将EOF与 << 结合使用,表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主Shell。

EOF只是一个分界符,当然也可以用abcde替换。

当shell遇到<<时,它知道下一个词是一个分界符。在该分界符以后的内容都被当作输入,直到shell又看到该分界符(位于单独的一行)。

此分界符可以是所定义的任何字符串,其实,不一定要用EOF,只要是“内容段”中没有出现的字符串,都可以用来替代EOF,完全可以换成abcde之类的字符串,只是一个起始和结束的标志罢了。

1,command<<EOF

(内容)

EOF


例如:

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/bash
#Filename:do.sh
su  - oracle -c "
export  ORACLE_SID=orcl
sqlplus  /nolog  <<EOF
connect / as sysdba
startup;
exit ;
EOF"
sleep  5
su  - oracle -c 
lsnrctl start

说明:

将“内容段”整个作为命令的输入。

用su命令读取整段命令,并逐行执行。



本文转自 sfih 51CTO博客,原文链接:http://blog.51cto.com/dayday/1739903

相关文章
|
Oracle 关系型数据库 Linux
Oracle设置监听之Navicat的锅
Oracle设置监听之Navicat的锅
355 0
|
存储 SQL Oracle
Oracle数据库批量删除表、视图、序列、存储过程、函数脚本
Oracle数据库批量删除表、视图、序列、存储过程、函数脚本
501 0
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
本文来自YashanDB官网,介绍如何处理Oracle客户端sql*plus中使用@@调用同级目录SQL脚本的场景。崖山数据库23.2.x.100已支持@@用法,但旧版本可通过Python脚本批量重写SQL文件,将@@替换为绝对路径。文章通过Oracle示例展示了具体用法,并提供Python脚本实现自动化处理,最后调整批处理脚本以适配YashanDB运行环境。
|
监控 Oracle 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第8天】在 Linux 平台设置 Oracle 开机自启动有多种方法,本文以 CentOS 为例,介绍了两种常见方法:使用 `rc.local` 文件(较简单但不推荐用于生产环境)和使用 `systemd` 服务(推荐)。具体步骤包括编写启动脚本、赋予执行权限、配置 `rc.local` 或创建 `systemd` 服务单元文件,并设置开机自启动。通过 `systemd` 方式可以更好地与系统启动过程集成,更规范和可靠。
1349 2
|
Oracle Ubuntu 关系型数据库
Linux平台Oracle开机自启动设置
【11月更文挑战第7天】本文介绍了 Linux 系统中服务管理机制,并详细说明了如何在使用 systemd 和 System V 的系统上设置 Oracle 数据库的开机自启动。包括创建服务单元文件、编辑启动脚本、设置开机自启动和启动服务的具体步骤。最后建议重启系统验证设置是否成功。
656 1
|
机器学习/深度学习 Oracle 关系型数据库
Oracle 19c单机一键安装脚本分享
Oracle 19c单机一键安装脚本分享
1091 2
|
Oracle 安全 关系型数据库
|
存储 Oracle 关系型数据库
|
存储 Oracle 关系型数据库
关系型数据库Oracle运行RMAN脚本
【7月更文挑战第23天】
415 4

推荐镜像

更多