Linux 环境下开机自启动Oracle服务
使用如下命令查看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服务的更多相关文章
- Centos7 环境下开机 自启动服务(service) 设置的改变 (命令systemctl 和 chkconfig用法区别比较)
参考文章: <Linux 设置程序开机自启动 (命令systemctl 和 chkconfig用法区别比较)> http://blog.csdn.net/kenhins/article/ ...
- iServer-Linux环境下开机自启动实现
备注:该方案的前提是linux环境下已经安装部署好了iServer 1.在/etc/init.d/目录下创建iserver服务脚本文件. [root@localhost /]# vim /etc/in ...
- 在Linux环境下设置ArcGIS Server 服务开机自启
在 VMware 11.0 中安装了CentOS 6.5的Linux系统中部署ArcGIS Server,安装完后默认开机不自动启动此服务,每次开机都要手动启动(如下图所示),这样太麻烦.本文记录了设 ...
- Linux环境下安装配置vsftpd服务(三种认证模式)
一.FTP简介 文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议.它工作于网络传输协议的应用层,使用客户/服务器模式,主要是用来 ...
- linux 系统下开机自动启动oracle 监听和实例 (亲测有效)
[oracle@oracle11g ~]$ dbstartORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listene ...
- 在Linux环境下的对启动服务进行停止或在运行
下面我以elasticsearch服务为例进行: 第一种: 1.前台运行: 运行结果 2.ctrl+c停止运行 第二种:后端运行 1.后端运行的命令./elasticsearch -d 这种启动后 ...
- linux环境下安装oracle步骤和自启动oracle
oracle安装步骤 一.创建用户 --注释-- /etc/passwd 用户配置文件 /etc/shadow 用户密码文件 /etc/group 组 组用户文件/etc/gshadow 组密码文件 ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】
安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】
<ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...
随机推荐
- Word embedding blog
http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/ https://www.quora.com/What-is-the-def ...
- Java 中的数组操作
前言 在Java中,有很多封装好的类可以用来操纵数组(排序,复制等等),使得数组使用起来非常的方便.这就是高级语言带来的好处. 代码示例 - 一维数组 package test; import jav ...
- iOS7中如何去除UINavigationbar下边的那条黑线
做项目过程中遇到要去掉导航栏下面的一条黑线,从网上找到的一个方法 默认UINavigationbar样式 准备用于替换的背景 替换后的效果 if ([self.navigationController ...
- 增加mvc:resources后访问不了注解配置的controller的问题
刚开始没有配置mvc:resourcescontroller能够正确访问,但是由于web.xml使用/拦截了所有的请求,所以静态资源访问不上增加mvc:resources之后,静态资源是能访问上了,但 ...
- Android开发优化
一:Android性能优化之渲染篇 1.双层LinearLayout重叠用一个RelatayLout替代布局 二:Android性能优化之运算篇 1.float比较时间是int的4倍,尽量使用int类 ...
- Spring MVC数组绑定
需求:商品批量删除,用户在页面选择多个商品,批量删除. 关键:将页面选择(多选)的商品id,传到controller方法的形参,方法形参使用数组接收页面请求的多个商品id // 批量删除 商品信息 @ ...
- c 深度剖析 3
1 typedef 和 define 的区别 #define是简单的替换; typedef是别名! 1 2 #define pchar char * pchar a,b;//展开后 char * ...
- 【转】 WebService到底是什么?
WebService到底是什么? http://blog.csdn.net/wooshn/article/details/8069087/
- codevs3872 邮递员送信(SPFA)
邮递员送信 时间限制: 1 Sec 内存限制: 64 MB提交: 10 解决: 5[提交][状态][讨论版] 题目描述 有一个邮递员要送东西,邮局在节点1.他总共要送N-1样东西,其目的地分别是2 ...
- 带百分号的数据转json
今天处理前后数据传输的时候遇到了问题. 前台拼参数是这样写的 '&rowData=' + JSON.stringify(rowData); 后台解析出的对象却总是null,而且没有抛Parse ...