启动Linux 的时候实现oracle数据库与Tomcat web服务器与操作系统一同关闭与启动
2007-03-02 20:49
956 查看
启动Linux 的时候实现oracle数据库与Tomcat web服务器与操作系统一同关闭与启动
最近做开发时,发觉每次重新启动服务器时,
必须启动oracle
然后启动TOMCAT WEB服务。
感觉这样麻烦,想到能否使数据库与web服务器与操作系统一同关闭与启动。
经过摸索,我最初的想法实现了,因此想把它写出来,与大家交流。
服务器环境:
RedHat Advance Server2.1(Red Hat Enterprise Linux AS release 3 (Taroon))
Oracle 10.1.0.3.0 for Linux
Apache Tomcat/5.5.20 for Linux
一、 oracle自动启动与停止
1、 修改Oracle系统配置文件/etc/oratab
/etc/oratab 格式为: SID:ORACLE_HOME:AUTO
把AUTO域设置为Y(大写),只有这样,oracle 自带的dbstart和dbshut才能够发挥作用。我的为:
ora10:/home/oracle/product/10.1.0:Y
2、 编写服务脚本:如下:
########################################################################
# Shell script to start/stop ORACLE from the /etc/rc[03].d directory #
########################################################################
# Note: $ORACLE_HOME and $ORACLE_USER is machine dependent! #
########################################################################
### SETUP ORACLE ENVIRONMENT ###
ORACLE_SID=ora10; export ORACLE_SID
ORACLE_USER=oracle; export ORACLE_USER
ORACLE_BASE=/home/oracle; export ORACLE_BASE
ORACLE_HOME=/home/oracle/product/10.1.0; export ORACLE_HOME
ORACLE_TERM=ansi; export ORACLE_TERM
J***A_FONTS=/usr/share/fonts/zh_CN/TrueType/; export J***A_FONTS
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:/usr/local/tomcat5/common/lib/classes12.jar
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
PATH=.:$ORACLE_HOME/bin:$PATH
export PATH
case $1 in
'start' ) echo Start ORACLE database ... //c
su $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart"
su $ORACLE_USER -c "$ORACLE_HOME/bin/emctl start dbconsole"
su $ORACLE_USER -c "$ORACLE_HOME/bin/isqlplusctl start"
su $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl start"
echo done
;;
'stop' ) echo Stop ORACLE database ... //c
su $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop tcp_listener"
su $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
su $ORACLE_USER -c "$ORACLE_HOME/bin/isqlplusctl stop"
su $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"
echo done
;;
*) echo "usage: $0 {start|stop}"
;;
esac
将脚本命名为oracle,保存在/etc/rc.d/init.d下
改变文件属性:chmod 755 oracle
注意:在windows下编辑此文件时有DOS格式字符导致在linux下不能够正常运行,建议用gedit 或用 vi编辑
3、建立服务连接:
系统启动时启动数据库,我们需要以下连结∶
$ ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc5.d/S99oracle #rc4.d unused
--------------------------------------------------------------------------------
要在重新启动时停止数据库,我们需要以下连结∶
--------------------------------------------------------------------------------
$ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle # 停止
$ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle # 重新启动
二Tomcat作为Linux系统服务自启动设置
. 简单的方法
最简单的方法就是通过Tomcat自带的startup.sh来自动启动,编辑/etc/rc.d/rc.local,增加:
export JDK_HOME=/usr/local/jdk //JDK的目录 如果不是的话加入一个ln -s /usr/java/jdk1.5.0_09 /usr/local/jdk
export J***A_HOME=/usr/local/jdk
/usr/local/tomcat/bin/startup.sh
注释:
linux的自启动文件(简单方法)
要实现linux开始未登录的时候就执行某些文件,可以在/etc/rc.local文件里边添加要执行的命令或文件.
要实现某个用户登录后自动执行某些文件,可以在这个用户的根目录下,找到.bash_profile这个文件,用vi编辑添回自己执行的命令和文件.
要实现某个用户退出的时候执行某些文件,同上,在根目录下找到.bash_logout这个文件,编写自己想要的.
三、检查
检查vsftp的启动
ftp登陆自己
检查oracle
sqlplus system/manager
看是否能够登陆
检查tomcat的启动
netstat -an|grep 8181
四、 解释:
默认LINUX不启动KDE2006-10-25 16:25默认linux启动不登陆到图形界面
/etc/inittab
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
# id:5:initdefault: 5改 //这个地方分别代表启动的级别
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
linux启动时:
图形界面 :自动调用/etc/rc.d/rc5.d下的符号连接名称以S开头(意为:start/启动)的脚本文件所指的服务,并自动传递命令行参数 start。
Linux关闭时:
图形界面 :自动调用/etc/rc.d/rc5.d下的符号连接名称以K开头(意为:kill/关闭)的文件所指的服务,并自动传递命令行参数 stop。
其它运行级别与此类似(具体可以参照/etc/rc.d/rc脚本)
最近做开发时,发觉每次重新启动服务器时,
必须启动oracle
然后启动TOMCAT WEB服务。
感觉这样麻烦,想到能否使数据库与web服务器与操作系统一同关闭与启动。
经过摸索,我最初的想法实现了,因此想把它写出来,与大家交流。
服务器环境:
RedHat Advance Server2.1(Red Hat Enterprise Linux AS release 3 (Taroon))
Oracle 10.1.0.3.0 for Linux
Apache Tomcat/5.5.20 for Linux
一、 oracle自动启动与停止
1、 修改Oracle系统配置文件/etc/oratab
/etc/oratab 格式为: SID:ORACLE_HOME:AUTO
把AUTO域设置为Y(大写),只有这样,oracle 自带的dbstart和dbshut才能够发挥作用。我的为:
ora10:/home/oracle/product/10.1.0:Y
2、 编写服务脚本:如下:
########################################################################
# Shell script to start/stop ORACLE from the /etc/rc[03].d directory #
########################################################################
# Note: $ORACLE_HOME and $ORACLE_USER is machine dependent! #
########################################################################
### SETUP ORACLE ENVIRONMENT ###
ORACLE_SID=ora10; export ORACLE_SID
ORACLE_USER=oracle; export ORACLE_USER
ORACLE_BASE=/home/oracle; export ORACLE_BASE
ORACLE_HOME=/home/oracle/product/10.1.0; export ORACLE_HOME
ORACLE_TERM=ansi; export ORACLE_TERM
J***A_FONTS=/usr/share/fonts/zh_CN/TrueType/; export J***A_FONTS
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK; export NLS_LANG
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:/usr/local/tomcat5/common/lib/classes12.jar
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
PATH=.:$ORACLE_HOME/bin:$PATH
export PATH
case $1 in
'start' ) echo Start ORACLE database ... //c
su $ORACLE_USER -c "$ORACLE_HOME/bin/dbstart"
su $ORACLE_USER -c "$ORACLE_HOME/bin/emctl start dbconsole"
su $ORACLE_USER -c "$ORACLE_HOME/bin/isqlplusctl start"
su $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl start"
echo done
;;
'stop' ) echo Stop ORACLE database ... //c
su $ORACLE_USER -c "$ORACLE_HOME/bin/lsnrctl stop tcp_listener"
su $ORACLE_USER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
su $ORACLE_USER -c "$ORACLE_HOME/bin/isqlplusctl stop"
su $ORACLE_USER -c "$ORACLE_HOME/bin/dbshut"
echo done
;;
*) echo "usage: $0 {start|stop}"
;;
esac
将脚本命名为oracle,保存在/etc/rc.d/init.d下
改变文件属性:chmod 755 oracle
注意:在windows下编辑此文件时有DOS格式字符导致在linux下不能够正常运行,建议用gedit 或用 vi编辑
3、建立服务连接:
系统启动时启动数据库,我们需要以下连结∶
$ ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc5.d/S99oracle #rc4.d unused
--------------------------------------------------------------------------------
要在重新启动时停止数据库,我们需要以下连结∶
--------------------------------------------------------------------------------
$ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle # 停止
$ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle # 重新启动
二Tomcat作为Linux系统服务自启动设置
. 简单的方法
最简单的方法就是通过Tomcat自带的startup.sh来自动启动,编辑/etc/rc.d/rc.local,增加:
export JDK_HOME=/usr/local/jdk //JDK的目录 如果不是的话加入一个ln -s /usr/java/jdk1.5.0_09 /usr/local/jdk
export J***A_HOME=/usr/local/jdk
/usr/local/tomcat/bin/startup.sh
注释:
linux的自启动文件(简单方法)
要实现linux开始未登录的时候就执行某些文件,可以在/etc/rc.local文件里边添加要执行的命令或文件.
要实现某个用户登录后自动执行某些文件,可以在这个用户的根目录下,找到.bash_profile这个文件,用vi编辑添回自己执行的命令和文件.
要实现某个用户退出的时候执行某些文件,同上,在根目录下找到.bash_logout这个文件,编写自己想要的.
三、检查
检查vsftp的启动
ftp登陆自己
检查oracle
sqlplus system/manager
看是否能够登陆
检查tomcat的启动
netstat -an|grep 8181
四、 解释:
默认LINUX不启动KDE2006-10-25 16:25默认linux启动不登陆到图形界面
/etc/inittab
# Default runlevel. The runlevels used by RHS are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
# id:5:initdefault: 5改 //这个地方分别代表启动的级别
l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6
linux启动时:
图形界面 :自动调用/etc/rc.d/rc5.d下的符号连接名称以S开头(意为:start/启动)的脚本文件所指的服务,并自动传递命令行参数 start。
Linux关闭时:
图形界面 :自动调用/etc/rc.d/rc5.d下的符号连接名称以K开头(意为:kill/关闭)的文件所指的服务,并自动传递命令行参数 stop。
其它运行级别与此类似(具体可以参照/etc/rc.d/rc脚本)
相关文章推荐
- Tomcat web服务器与操作系统一同关闭与启动
- linux操作系统用crontab做定时关闭启动tomcat
- 程序实现启动和停止嵌入式Tomcat Web服务器
- linux下tomcat服务器的启动以及关闭
- SSM项目连接远程Linux服务器的mysql 启动tomcat卡在了 Initializing Spring root WebApplicationContext
- eclipse 开发web程序,启动tomcat插件服务器的时候。部署目录在那里?
- tomcat启动时出现异常Exception loading sessions from persistent storage分析: session未超时的情况下,服务器关闭的时候会被序列化为工程名\
- 配置了SSL 的web服务器,如何实现启动服务的时候自动输入密码
- Linux下安装MyEclipse和Tomcat服务器详解,以及我安装过程中所出现的问题以及解决办法,并实现一个web小程序
- Linux+Nginx+Tomcat实现Web服务器的负载均衡集群
- 【Linux运维-集群技术进阶】Nginx+Tomcat实现Web服务器的负载均衡
- SSM项目连接远程Linux服务器的mysql 启动tomcat卡在了 Initializing Spring root WebApplicationContext
- Linux下oracle数据库启动和关闭操作
- linux环境下编写shell脚本实现启动停止tomcat服务的方法
- linux 系统tomcat启动显示成功,web程序页面打不开
- Linux下基于Xdialog的Oracle11gR2助手工具(实现Oracle11g 启动、关闭、重启)
- Linux下Tomcat的启动、关闭、杀死进程以及查看日志
- Linux下Tomcat的启动、关闭、杀死进程以及查看日志
- Linux下Tomcat的启动、关闭、杀死进程以及查看日志
- Linux主机web环境jdk+tomcat服务器搭建