我在VM装 的是radhat6.0系统,ORACLE数据库是11.2.0版本的
下面是脚本,我其功能是
系统启动时候:监听启动,数据库启动;数据库重启或关闭:数据库和监听也随之重启和关闭.
应该如何设置?
#!/bin/sh
# /etc/rc.d/init.d/oracle
# Description: The following script
# starts and stops all Oracle databases and listeners
case "$1" in
start)su - oracle -c "$ORACLE_HOME/bin/dbstart"
su - oracle -c "$ORACLE_HOME/bin/lsnrctl start"
;;
stop)
su - oracle -c "$ORACLE_HOME/bin/lsnrctl stop"
su - oracle -c "$ORACLE_HOME/bin/dbshut"
;;
restart)su - oracle -c "$ORACLE_HOME/bin/dbshut "
su - oracle -c "$ORACLE_HOME/bin/dbstart "
su - oracle -c "$ORACLE_HOME/bin/lsnrctl stop"
;;
*)
echo "Usage: oracle {start|stop|restart}"
exit 1
esac
下面是脚本,我其功能是
系统启动时候:监听启动,数据库启动;数据库重启或关闭:数据库和监听也随之重启和关闭.
应该如何设置?
#!/bin/sh
# /etc/rc.d/init.d/oracle
# Description: The following script
# starts and stops all Oracle databases and listeners
case "$1" in
start)su - oracle -c "$ORACLE_HOME/bin/dbstart"
su - oracle -c "$ORACLE_HOME/bin/lsnrctl start"
;;
stop)
su - oracle -c "$ORACLE_HOME/bin/lsnrctl stop"
su - oracle -c "$ORACLE_HOME/bin/dbshut"
;;
restart)su - oracle -c "$ORACLE_HOME/bin/dbshut "
su - oracle -c "$ORACLE_HOME/bin/dbstart "
su - oracle -c "$ORACLE_HOME/bin/lsnrctl stop"
;;
*)
echo "Usage: oracle {start|stop|restart}"
exit 1
esac
解决方案 »
- oracle9i同一实例下但不同用户下相同结构的表(多张)之间进行数据复制
- 急急急..一个简单的sql语句不知道在Orcle中是否能执行..我这边没的Orcle环境。
- case when between用法
- 初学者关于oracle语句的问题
- 小问题:正在学oracle9i,在vista下安装。
- 如果要UPDATE的内容被其他用户锁定,UPDATE语句会一直处于等待状态,请问如何让他能马上返回错误信息
- linux平台下面使用oracle
- 请问SQL Server里有没有像Oracel里的rownum这样的特殊字段?
- 局域网内换IP段后,本地Oracle连不上服务器Oracle了
- 查询出选课不少于2门的学生的姓名、选课门数,要求按照选课门数的降序排序,如果选课门数相同,按照姓名升序排序
- 日期判断的问题
- Oracle 10g安装,升级
-------------------------------------------------------------------------------------------------
1. Root用户登录,vi /etc/oratab
orcl:/u01/app/oracle/product/10.2.0/db_1:N 改为orcl:/u01/app/oracle/product/10.2.0/db_1:Y
--------------------------------------------------------------------------------------------------
2. root 用户 在/etc/rc.d/init.d/目录下新建一个文件 oracle10g,把如下内容放到这个文件里,注意参数需要修改
[root@rhel5 ~]# cd /etc/rc.d/init.d/
[root@rhel5 init.d]# touch oracle10g
[root@rhel5 init.d]# chmod a+x oracle10g
[root@rhel5 init.d]# vim oracle10g
#!/bin/bash
# chkconfig: 345 99 10
# description: Startup Script for Oracle Databases
# /etc/rc.d/init.d/oracle10g
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracle"
# if the executables do not exist -- display error
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: can not start"
exit 1
fi
# depending on parameter -- startup,shutdown,restart
# of the instance and listener or usage display
case "$1" in
'start')
# Oracle listener and instance startup
echo -n "Starting oracle10g: "
su - $ORA_OWNR -c "$ORACLE_HOME/bin/dbstart"
touch /var/lock/subsys/oracle10g
su - $ORA_OWNR -c "$ORACLE_HOME/bin/emctl start dbconsole"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctl start"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl start"
echo "OK"
;;
'stop')
# Oracle listener and instance shutdown
echo -n "shutting down oracle10g: "
su - $ORA_OWNR -c "$ORACLE_HOME/bin/emctl stop dbconsole"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/isqlplusctl stop"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/dbshut"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/lsnrctl stop"
rm -f /var/lock/subsys/oracle10g
echo "OK"
;;
'reload|restart')
$0 stop
$0 start
;;
*)
echo "Usage:'basename $0' start|stop|restart|reload"
exit 1
esac
exit 0
-----------------------------------------------------------------------------------------------------
3.使用oracle用户修改$ORACLE_HOME/bin/dbstart文件:
# su - oracle
$ cd $ORACLE_HOME/bin
$ gedit dbstart
找到 ORACLE_HOME_LISTNER=.....这行, 修改成
ORACLE_HOME_LISTNER=/u01/app/oracle/product/10.2.0/db_1
或者直接修改成:
ORACLE_HOME_LISTNER=$ORACLE_HOME
注意:是修改,不是增加,可是使用gedit的查找功能查找:
确保执行dbstart命令没有错误,如果不修改上面的路径,dbstart会报错
--------------------------------------------------------------------------------------------------------
4.ROOT用户编辑 /etc/rc.d/rc.local 文件,目前我这边保留的是如下:
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
su - oracle -lc "/u01/app/oracle/product/10.2.0/db_1/bin/lsnrctl start"
su - oracle -lc "/u01/app/oracle/product/10.2.0/db_1/bin/dbstart"
重启操作系统,就可以自动启动了