oracle数据库自动启动关闭

简介: 在OS启动时,可以设置oracle和os一起启动或关闭。oracle自带dbstart和dbshut命令。它们会读取oratab文件[oracle@prod1 bin]$ cd $ORACLE_HOME/bin#查看启动和关闭脚本是否存在[oracl...

在OS启动时,可以设置oracle和os一起启动或关闭。oracle自带dbstart和dbshut命令。它们会读取oratab文件

[oracle@prod1 bin]$ cd $ORACLE_HOME/bin
#查看启动和关闭脚本是否存在
[oracle@prod1 bin]$ ls dbstart 
dbstart
[oracle@prod1 bin]$ ls dbshut 
dbshut

修改dbstart、dbshut命令

[oracle@prod1 bin]$ vi dbstart 
ORACLE_HOME_LISTNER=$ORACLE_HOME
[oracle@prod1 bin]$ vi dbshut 
ORACLE_HOME_LISTNER=$ORACLE_HOME

修改oratab文件
PROD为ORACLE_SID
/u01/app/oracle/product/11.2.0/db_1为ORACLE_HOME
Y表示允许数据库自动启动或关闭

[oracle@prod1 bin]$ vi /etc/oratab 
PROD:/u01/app/oracle/product/11.2.0/db_1:Y

验证

[oracle@prod1 admin]$ dbstart
Processing Database instance "PROD": log file /u01/app/oracle/product/11.2.0/db_1/startup.log
[oracle@prod1 admin]$ more /u01/app/oracle/product/11.2.0/db_1/startup.log
SQL*Plus: Release 11.2.0.1.0 Production on Sun Feb 22 11:56:14 2015

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

idle> Connected to an idle instance.
idle> ORACLE instance started.

Total System Global Area  891383808 bytes
Fixed Size                  1340104 bytes
Variable Size             658509112 bytes
Database Buffers          226492416 bytes
Redo Buffers                5042176 bytes
Database mounted.
Database opened.
idle> Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

/u01/app/oracle/product/11.2.0/db_1/bin/dbstart: Database instance "PROD" warm started.

创建脚本

#注意用户
[root@prod1 ~]# cd /etc/rc.d/init.d/
[root@prod1 init.d]# vi oracle
#!/bin/sh
#chkconfig: 35 80 10
#description: oracle auto start-stop script
export ORACLE_SID=PROD
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_HOME_LISTNER=$ORACLE_HOME
export PATH=$ORACLE_HOME/bin:$PATH:$ORACLE_HOME/jdk/bin

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 - oracle -c "$ORACLE_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 - oracle -c "$ORACLE_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 - oracle -c "$ORACLE_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 - oracle -c "$ORACLE_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 

修改文件权限

[root@prod1 init.d]# chmod 755 oracle

添加服务

[root@prod1 init.d]# chkconfig --level 35 oracle on

关机或重启自动关闭


[root@prod1 rc0.d]# ln -s /etc/rc.d/init.d/oracle /etc/rc0.d/K01oracle
[root@prod1 rc0.d]# ln -s /etc/rc.d/init.d/oracle /etc/rc6.d/K01oracle

使用

service oracle start
service oracle stop
service oracle restart
目录
相关文章
|
1月前
|
存储 Oracle 关系型数据库
数据库数据恢复—ORACLE常见故障的数据恢复方案
Oracle数据库常见故障表现: 1、ORACLE数据库无法启动或无法正常工作。 2、ORACLE ASM存储破坏。 3、ORACLE数据文件丢失。 4、ORACLE数据文件部分损坏。 5、ORACLE DUMP文件损坏。
116 11
|
2月前
|
Oracle 关系型数据库 数据库
Oracle数据恢复—Oracle数据库文件有坏快损坏的数据恢复案例
一台Oracle数据库打开报错,报错信息: “system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。管理员联系我们数据恢复中心寻求帮助,并提供了Oracle_Home目录的所有文件。用户方要求恢复zxfg用户下的数据。 由于数据库没有备份,无法通过备份去恢复数据库。
|
2月前
|
存储 Oracle 关系型数据库
oracle数据恢复—Oracle数据库文件大小变为0kb的数据恢复案例
存储掉盘超过上限,lun无法识别。管理员重组存储的位图信息并导出lun,发现linux操作系统上部署的oracle数据库中有上百个数据文件的大小变为0kb。数据库的大小缩水了80%以上。 取出&并分析oracle数据库的控制文件。重组存储位图信息,重新导出控制文件中记录的数据文件,发现这些文件的大小依然为0kb。
|
1月前
|
存储 Oracle 关系型数据库
服务器数据恢复—华为S5300存储Oracle数据库恢复案例
服务器存储数据恢复环境: 华为S5300存储中有12块FC硬盘,其中11块硬盘作为数据盘组建了一组RAID5阵列,剩下的1块硬盘作为热备盘使用。基于RAID的LUN分配给linux操作系统使用,存放的数据主要是Oracle数据库。 服务器存储故障: RAID5阵列中1块硬盘出现故障离线,热备盘自动激活开始同步数据,在同步数据的过程中又一块硬盘离线,RAID5阵列瘫痪,上层LUN无法使用。
|
2月前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
60 7
|
2月前
|
Oracle 关系型数据库 数据库
oracle数据库技巧
【10月更文挑战第25天】oracle数据库技巧
41 6
|
2月前
|
存储 Oracle 关系型数据库
Oracle数据库优化策略
【10月更文挑战第25天】Oracle数据库优化策略
41 5
|
Oracle 关系型数据库 数据库
|
3月前
|
存储 Oracle 关系型数据库
Oracle数据库的应用场景有哪些?
【10月更文挑战第15天】Oracle数据库的应用场景有哪些?
245 64
|
3月前
|
存储 Oracle 关系型数据库
数据库数据恢复—Oracle ASM磁盘组故障数据恢复案例
Oracle数据库数据恢复环境&故障: Oracle ASM磁盘组由4块磁盘组成。Oracle ASM磁盘组掉线 ,ASM实例不能mount。 Oracle数据库故障分析&恢复方案: 数据库数据恢复工程师对组成ASM磁盘组的磁盘进行分析。对ASM元数据进行分析发现ASM存储元数据损坏,导致磁盘组无法挂载。

推荐镜像

更多