Oracle Database 软件提供了以下两个脚本来配置数据库随服务器自动启动和关闭:
[oracle@prod bin]$ pwd
/u01/app/oracle/product/11.2.0/db_1/bin
[oracle@prod bin]$ ls -l dbs*
-rwxr-x--- 1 oracle oinstall 6030 Jan 1 2000 dbshut
-rwxr-x--- 1 oracle oinstall 13797 Jan 1 2000 dbstart
我们需要在 unix 启动/关闭脚本( rc0.d / rc1.d 等)中调用这两个脚本
1、检查 /etc/oratab 下的 oratab 文件,该文件应该包含要设置自动启动和关闭的数据库的条目,
其中 autostart 值域的值为 Y,如下所示:
$ORACLE_SID:$ORACLE_HOME:Y
[oracle@prod bin]$ more /etc/oratab
prod:/u01/app/oracle/product/11.2.0/db_1:N
[oracle@prod bin]$ vi /etc/oratab
prod:/u01/app/oracle/product/11.2.0/db_1:Y
2、将如下文件保存到 /etc/init.d/ 下(/etc/init.d/ 是 redhat linux 下特有的)。
[root@prod init.d]# pwd
/etc/init.d
[root@prod init.d]# ls -l dbora
-rw-r--r-- 1 root root 1049 Mar 27 20:10 dbora
--注意 ORA_OWNER 和 ORA_HOME 变量的设置
------------------ Start dbora ---------------------------------
#! /bin/bash
#
# description: Oracle auto start-stop script.
#
# chkconfig: 2345 99 10
#
# processname: oracle
# config: /etc/oratab
# pidfile: /var/run/oracle.pid
# Source function library.
. /etc/init.d/functions
RETVAL=0
ORA_OWNER="oracle"
ORA_HOME="/u01/app/oracle/product/11.2.0/db_1"
# See how we were called.
prog="oracle"
start() {
echo -n $"Starting $prog: "
su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart"
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/dbora
return $RETVAL
}
stop() {
echo -n $"Stopping $prog: "
su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut"
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -r /var/lock/subsys/dbora
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop|restart}"
exit 1
esac
exit $?
------------------ End dbora ---------------------------------
3: 以 root 用户身份执行如下命令:
[root@prod init.d]# cd /sbin
[root@prod sbin]# chkconfig --add dbora
--此命令将创建如下系统服务
[root@prod sbin]# chkconfig --list | grep dbora
dbora 0:off 1:off 2:on 3:on 4:on 5:on 6:off
--此外,还会创建如下文件
/etc/rc2.d/S99dbora ( calls $ORACLE_HOME/bin/dbstart )
/etc/rc3.d/S99dbora ( calls $ORACLE_HOME/bin/dbstart )
/etc/rc4.d/S99dbora ( calls $ORACLE_HOME/bin/dbstart )
/etc/rc5.d/S99dbora ( calls $ORACLE_HOME/bin/dbstart )
/etc/rc0.d/K10dbora ( calls $ORACLE_HOME/bin/dbshut )
/etc/rc1.d/K10dbora ( calls $ORACLE_HOME/bin/dbshut )
/etc/rc6.d/K10dbora ( calls $ORACLE_HOME/bin/dbshut )
lrwxrwxrwx 1 root root 15 Mar 27 20:12 /etc/rc2.d/S99dbora -> ../init.d/dbora
[root@prod rc2.d]# ls -l /etc/rc3.d/S99dbora
lrwxrwxrwx 1 root root 15 Mar 27 20:12 /etc/rc3.d/S99dbora -> ../init.d/dbora
[root@prod rc2.d]# ls -l /etc/rc4.d/S99dbora
lrwxrwxrwx 1 root root 15 Mar 27 20:12 /etc/rc4.d/S99dbora -> ../init.d/dbora
[root@prod rc2.d]# ls -l /etc/rc5.d/S99dbora
lrwxrwxrwx 1 root root 15 Mar 27 20:12 /etc/rc5.d/S99dbora -> ../init.d/dbora
[root@prod rc2.d]# ls -l /etc/rc0.d/K10dbora
lrwxrwxrwx 1 root root 15 Mar 27 20:12 /etc/rc0.d/K10dbora -> ../init.d/dbora
[root@prod rc2.d]# ls -l /etc/rc1.d/K10dbora
lrwxrwxrwx 1 root root 15 Mar 27 20:12 /etc/rc1.d/K10dbora -> ../init.d/dbora
[root@prod rc2.d]# ls -l /etc/rc6.d/K10dbora
lrwxrwxrwx 1 root root 15 Mar 27 20:12 /etc/rc6.d/K10dbora -> ../init.d/dbora
init.d 脚本中 " # chkconfig: 2345 99 10 ":表示该系统服务 start 的运行级别为 2、3、4 和 5
,stop 运行级别为 0、1 和 6,start 优先级为 99 ,stop 优先级为 10。
4、重启 unix 服务器,并验证数据库是否自动启动
转载请注明作者出处及原文链接:
http://blog.csdn.net/xiangsir/article/details/8728326
分享到:
相关推荐
Linux/UNIX系统编程手册源码 linux interface source code
Linux/UNIX系统编程手册课后习题代码 linux-programming-interface-exercises
,linux编程.ppt,linux编程.ppt,linux编程.ppt,linux编程.ppt,linux编程.ppt,linux编程.ppt,linux编程.ppt,linux编程.ppt,linux编程.ppt
经典之作《Linux/UNIX系统编程手册》源码,比书中源码要新。直接解压可编译。
用Linux/UNIX Shell编程语言设计系统监控程序.pdf
python3.7,官网原版,适合linux/unix平台,放心使用。
《LINUX/UNIX系统编程手册 上》.((德)Michael Kerrisk ),经典的linux/unix下c语言编程手册,分上下册,每册有150M,由于上传权限,是能把每册分割成3份上传
该资源是很好的学习Linux/Unix编程的手册,看豆瓣书评挺高的就先自己下载看一下,防止自己的文件意外删除,先放到CSDN上,一来可以做一个备份,二来有需要的也可以自己下载(分享才能更好的成长)
有两本书组成,一本是可以快速上手操作linux/unix系统的简介教程,另一本时比较详细的慢慢研究的经典教程(鸟哥的私房菜+高清),值得收藏
linux编程资深专家michael kerrisk在书中详细描述了linux/unix系统编程所涉及的系统调用和库函数,并辅之以全面而清晰的代码示例。《linux/unix系统编程手册(上、下册)》涵盖了逾500个系统调用及库函数,并给出逾200...
Linux编程资深专家Michael Kerrisk在书中详细描述了Linux/UNIX系统编程所涉及的系统调用和库函数,并辅之以全面而清晰的代码示例。《Linux/UNIX系统编程手册(上、下册)》涵盖了逾500个系统调用及库函数,并给出逾200...
Linux/Unix下ODBC的安装、配置与编程。初级的。
Linux编程资深专家Michael Kerrisk在书中详细描述了Linux/UNIX系统编程所涉及的系统调用和库函数,并辅之以全面而清晰的代码示例。《Linux/UNIX系统编程手册(上、下册)》涵盖了逾500个系统调用及库函数,并给出逾200...
Linux/UNIX系统编程手册源代码(来自官方网站),代码在Linux发行版上可以编译运行,执行make命令即可。
linux编程资深专家michael kerrisk在书中详细描述了linux/unix系统编程所涉及的系统调用和库函数,并辅之以全面而清晰的代码示例。《linux/unix系统编程手册(上、下册)》涵盖了逾500个系统调用及库函数,并给出逾200...
Cacti for Linux/Unix安装方法 在文件夹include下的config.php中可配置你的数据库信息。 $database_type = "mysql"; //数据库类型 $database_default = "cacti"; //数据库名称 $database_hostname = "localhost...
《Linux/UNIX网络编程》-甘刚-电子教案
《LINUX/UNIX系统编程手册》((德)Michael Kerrisk ),上下册,经典的LINUX/UNIX下C语言编程教材,这是这本书所用到的所有代码,包涵所有头文件,亲测在LINUX下完美运行
linux/unix系统编程手册附录代码,适用于想提高自己linu水平以及对linux感兴趣的的同学去参考阅读
the linux programming interface 书中的代码,作者:德国 michael kerrisk 孙剑等翻译。 出版社:人民邮电出版社