linux下oracle设置开机自启动实现方法

在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介绍一般而言如何启动oracle。

一、在Linux下启动Oracle

登录到CentOS,切换到oracle用户权限

# su – oracle

接着输入:

$ sqlplus "/as sysdba"

原本的画面会变为
SQL>

接着请输入
SQL> startup

就可以正常的启动数据库了。

另外停止数据库的指令如下:
SQL> shutdown immediate

二、检查Oracle DB监听器是否正常

回到终端机模式,输入:

$ lsnrctl status

检查看看监听器是否有启动

如果没有启动,可以输入:

$ lsnrctl start

启动监听器

SQL> conn sys@orcl as sysdba

然后输入密码,sys以sysdba身份登入数据库。

三、启动emctl

另外也可以发现http://localhost.localdomain:1158/em 目前是没有反应的,这边要另外启动,启动的指令如下:

$ emctl start dbconsole

这个指令运行时间较长,执行完的画面如下:

手动启动Oracle数据库完毕,下面创建系统自行启动Oracle的脚本。

四、Oracle启动&停止脚本

1. 修改Oracle系统配置文件:/etc/oratab,只有这样,Oracle 自带的dbstart和dbshut才能够发挥作用。

# vi /etc/oratab
orcl:/opt/oracle/102:Y

# Entries are of the form:
#   $ORACLE_SID:$ORACLE_HOME:<N|Y>:

2. 在 /etc/init.d/ 下创建文件oracle,内容如下:


复制代码 代码如下:

#!/bin/sh
# chkconfig: 35 80 10
# description: Oracle auto start-stop script.
#
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.
ORA_HOME=/opt/oracle/102
ORA_OWNER=oracle
if [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
fi
case "$1" in
'start')
# Start the Oracle databases:
echo "Starting Oracle Databases ... "
echo "-------------------------------------------------" >> /var/log/oracle
date +" %T %a %D : Starting Oracle Databases as part of system up." >> /var/log/oracle
echo "-------------------------------------------------" >> /var/log/oracle
su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" >>/var/log/oracle
echo "Done"
# Start the Listener:
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 - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" >>/var/log/oracle
echo "Done."
echo "-------------------------------------------------" >> /var/log/oracle
date +" %T %a %D : Finished." >> /var/log/oracle
echo "-------------------------------------------------" >> /var/log/oracle
touch /var/lock/subsys/oracle

'stop')
# Stop the Oracle Listener:
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 - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" >>/var/log/oracle
echo "Done."
rm -f /var/lock/subsys/oracle
# Stop the Oracle Database:
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 - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" >>/var/log/oracle
echo "Done."
echo ""
echo "-------------------------------------------------" >> /var/log/oracle
date +" %T %a %D : Finished." >> /var/log/oracle
echo "-------------------------------------------------" >> /var/log/oracle

'restart')
$0 stop
$0 start

esac

3. 改变文件权限
# chmod 755 /etc/init.d/oracle

4. 添加服务
# chkconfig --level 35 oracle on

5. 需要在关机或重启机器之前停止数据库,做一下操作
# ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle   //关机
# ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle   //重启

6. 使用方法
# service oracle start        //启动oracle
# service oracle stop        //关闭oracle
# service oracle restart     //重启oracle

7. 测试

a. 开机自启动

复制代码 代码如下:

Last login: Mon Nov 26 19:57:06 2012 from 10.0.0.145
[root@ORS ~]# su - oracle
[oracle@ORS ~]$ sqlplus "/as sysdba"

SQL*Plus: Release 10.2.0.1.0 - Production on Mon Nov 26 20:07:33 2012

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> set linesize 300;
SQL> set pagesize 30;
SQL> select * from scott.emp;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
SMITH CLERK 7902 17-DEC-80 800 20
ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
WARD SALESMAN 7698 22-FEB-81 1250 500 30
JONES MANAGER 7839 02-APR-81 2975 20
MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
BLAKE MANAGER 7839 01-MAY-81 2850 30
CLARK MANAGER 7839 09-JUN-81 2450 10
SCOTT ANALYST 7566 19-APR-87 3000 20
KING PRESIDENT 17-NOV-81 5000 10
TURNER SALESMAN 7698 08-SEP-81 1500 0 30
ADAMS CLERK 7788 23-MAY-87 1100 20
JAMES CLERK 7698 03-DEC-81 950 30
FORD ANALYST 7566 03-DEC-81 3000 20
MILLER CLERK 7782 23-JAN-82 1300 10
rows selected.

SQL>

b. service oracle stop

复制代码 代码如下:

SQL> Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[oracle@ORS ~]$ logout
[root@ORS ~]# service oracle stop
Stoping Oracle Listeners ...
Done.
Stoping Oracle Databases ...
Done.
[root@ORS ~]# su - oracle
[oracle@ORS ~]$ sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Nov 26 20:17:20 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to an idle instance.
SQL> set linesize 300;
SQL> set pagesize 30;
SQL> select * from scott.emp;
select * from scott.emp
*
ERROR at line 1:
ORA-01034: ORACLE not available
SQL>

c. service oracle start

复制代码 代码如下:

SQL> Disconnected
[oracle@ORS ~]$ logout
[root@ORS ~]# service oracle start
Starting Oracle Databases ...
Done
Starting Oracle Listeners ...
Done.
[root@ORS ~]#

d. service oracle restart

复制代码 代码如下:

[root@ORS ~]# service oracle restart
Stoping Oracle Listeners ...
Done.
Stoping Oracle Databases ...
Done.

Starting Oracle Databases ...
Done
Starting Oracle Listeners ...
Done.
[root@ORS ~]#

至此,Oracle服务启动&停止脚本与开机自启动设置完毕。

时间: 2012-11-25

Linux启动与自启动的实例详解

Linux启动与自启动的实例详解 一 启动与自启动 服务启动:就是在当前系统中让服务运行,并提供功能. 服务自启动:自启动是指让服务在系统开机或重启动之后,随着系统的启动而自动启动服务. 二 查询已安装的服务 三 RPM安装服务和源码包安装服务的区别 RPM安装服务和源码包安装服务的区别就是安装位置的不同 源码包安装在指定位置,一般是/usr/local/ RPM包安装在默认位置上 以上就是Linux 中启动与自启动的实例,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大

linux设置服务开机自启动的三种方式

这里介绍一下linux开机自动启动的几种方法,共计3种,大家可以借鉴一下!经验里面以centos 5.3系统为例! 方法1:.利用ntsysv命令进行设置,利用root登陆 终端命令下输入ntsysv 回车:如下图 在这个界面上进行操作即可,简要的操作说明: 括号中(*)代表默认开机启动,否则不会在开机的时候启动; 按钮功能: 上下键:可以在各个服务之间移动 空格键:设置启动还是不启动,*进行设置即可 Tab键:在方框.ok.cancle之间进行切换 F1键:进行帮助文档,如下图: 方法2:利用

Linux下Redis设置密码及开机自启动

1.设置Redis.conf中daemonize为yes,确保守护进程开启: 找到#requirepass foorbared这一行,直接替换掉这行,改为requirepass 新密码 2.编写开机自启动脚本 vi /etc/init.d/redis 脚本内容如下: #!/bin/sh #chkconfig: 2345 80 90 # Simple Redis init.d script conceived to work on Linux systems # as it does use of

Linux如何设置服务自启动

有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s                       在/etc/rc.d/rc*.d目录中建立/etc/init.d/服务的软链接(*代表0-6七个运行级别之一) chkonfig                命令行运行级别设置 ntsysv                   伪图形运行级别设置 注意:1.这三种方式主要用于以redhat为基础的发行版 2.如果还不知道运行级别是什么,那么最

Linux下的Oracle启动脚本及其开机自启动

说明:以下操作环境在CentOS 6.4 + Oracle 11gR2(Oracle安装在ORACLE_BASE=/opt/oracle中,其ORACLE_HOME=/opt/oracle/11g) 用OUI安装并配置Oracle数据库后,Oracle就开启了(包括:数据库实例.监听器.EM).在重启操作系统之后,Oracle默认是没有启动的.使用如下命令查看Oracle相关服务是否已启动: ps aux | grep ora_ #若无ora_**_**相关的进程,则oracle数据库实例未启动

linux设置tomcat自启动的方法

linux设置tomcat自动启动在centos下,开机后会自动执行/etc/rc.local中的命令,平时启动tomcat的命令为tomcat_home/bin/startup.sh或tomcat_home/bin/catalina.sh start,当直接把他们任何一个加入到/etc/rc.local中,重启机器后发现tomcat并没有启动.原因是开机时java的环境还没有设置好,故自己写一个脚本,先设置java环境,然后在启动,脚本如下: 复制代码 代码如下: export JAVA_HO

Linux中Oracle服务启动和停止脚本与开机自启动

在CentOS 6.3下安装完Oracle 10g R2,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数,首先先介绍一般而言如何启动oracle. 一.在Linux下启动Oracle 登录到CentOS,切换到oracle用户权限 # su – oracle 接着输入: $ sqlplus "/as sysdba" 原本的画面会变为 SQL> 接着请输入 SQL> startup 就可以正

在Linux上用forever实现Node.js项目自启动

那么能否利用forever加启动脚本方式解决上述问题呢?答案当然是肯定的,只不过有点麻烦,而且forever官方缺少详细的配置文档.我在配置的时候也走了一些弯路,下面详细来说. 注:本文的实验环境是Ubuntu Server 12.04 LTS x86_64,在CentOS上的配置更简单一些 最早,我想着试试在/etc/rc.local中增加一句forever start xxx看看,结果发现Ubuntu(其他系统一样)就不鸟我,主要矛盾就是mongodb使用这种方式就可以跑起来,forever

Linux下Python脚本自启动与定时任务详解

前言 最近同事问了一个关于Python脚本自启动与定时任务的问题,发现很多的朋友对这块都不是特别的熟悉,所以本文主要给大家介绍的是关于Linux下Python脚本自启动与定时任务的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍: 一.让Python随Linux开机自动运行 准备好要自启的脚本auto.py 用root权限编辑以下文件 sudo vim /ect/rc.local 在exit 0上面编辑启动脚本的命令 /usr/bin/python3.5 /home/edgar

Linux下Python脚本自启动和定时启动的详细步骤

一.Python开机自动运行 假如Python自启动脚本为 auto.py .那么用root权限编辑以下文件: sudo vim /etc/rc.local 如果没有 rc.local 请看 这篇文章 在exit 0上面编辑启动脚本的命令 /usr/bin/python3 /home/selfcs/auto.py > /home/selfcs/auto.log 最后重启Linux,脚本就能自动运行并打印日志了. 二.让Python脚本定时启动 用root权限编辑以下文件 sudo vim /et

对linux下软件(库)的更新命令详解

在ubuntu服务器下安装包的时候,经常会用到sudo apt-get install 包名 或 sudo pip install 包名,那么两者有什么区别呢? 1.区别 pip用来安装来自PyPI(https://www.python.org/)的python所有的依赖包,并且可以选择安装任何在PyPI上已上传的先前版本的依赖包,个人认为是python相关的包和第三方包以及各种版本: apt-get可以用来安装软件.更新源.也可以用来更新自Ubuntu(https://launchpad.ne

Linux下tcpdump命令解析及使用详解

简介 用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具.tcpdump可以将网络中传送的数据包的"头"完全截获下来提供分析.它支持针对网络层.协议.主机.网络或端口的过滤,并提供and.or.not等逻辑语句来帮助你去掉无用的信息. 实用命令实例 默认启动 tcpdump 普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包. 监视指定网络接口的数据包 tcpdum

Linux 下C语言连接mysql实例详解

Linux 下C语言连接mysql实例详解 第一步: 安装mysql, 参考:http://www.jb51.net/article/39190.htm 第二步: 安装mysql.h函数库 sudo apt-get install libmysqlclient-dev 执行之后就可以看到/usr/include/MySQL目录了 然后开始我们的链接. 首先看我的数据库 mysql> show databases; +--------------------+ | Database | +----

在linux下升级软件包版本等方法详解

Linux环境下,要想查看某个软件(package)是否安装. rpm包方式安装的,使用 rpm -qa | grep "软件或者包的名字". yum方式安装的, yum list installed | grep "软件或者包的名字". 升级软件包版本. 我们经常会遇到依赖其他版本包的情况(一般是更新的版本),这时候我们需要升级包. 1.卸载后安装新的包. 首先要根据文首提到的查看软件包是否安装的方式查看你是否安装了这个软件,若没有安装,找到路径后使用wget命令

Linux 下redis5.0.0安装教程详解

Linux redis5.0.0安装,教程如下所示: 1.从官网下载,然后传到服务器,tar -zxvf解压 2.进入redis [root@localhost software]# cd redis-5.0.0/ 3.安装:make, (1)若提示:: gcc: Command not found 要安装gcc ,直接命令安装:yum -y install gcc (2)若:提示 fatal error: jemalloc/jemalloc.h: No such file or directo

linux下的yum命令原理和详解

yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载.安装.yum提供了查找.安装.删除某一个.一组甚至全部软件包的命令,而且命令简洁而又好记. yum的命令形式一般是如下:yum [options] [command] [package ...] 其中的[opt

Linux下MongoDB数据库实现自动备份详解

本文主要给大家介绍的是关于Linux下MongoDB数据库实现自动备份的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 一.创建MongoDB备份目录 mkdir -p /data/mongodb_bak/mongodb_bak_now mkdir -p /data/mongodb_bak/mongodb_bak_list 二.新建MongoDB数据库备份脚本(/data/mongodb_bak/MongoDB_bak.sh) #!/bin/bash #backup MongoDB

LINUX下Oracle数据库用户创建方法详解

本文实例分析了LINUX下Oracle数据库用户创建方法.分享给大家供大家参考,具体如下: 1)登录linux,以oracle用户登录(如果是root用户登录的,登录后用 su - oracle命令切换成oracle用户) 2)首先要打开监听器命令如下:lsnrctl start,然后sqlplus /nolog ,然后conn /as sysdba,然后startup(这一部分命令是用来打开oracle数据库) 3)查看我们常规将用户表空间放置的位置:执行如下sql: SQL> select