CentOS 6.3 启动停止Oracle

在CentOS6.3下安装完OracleDatabase11gRelease11.2.0.1.0-64bitProduction,重开机之后,你会发现Oracle没有自行启动,这是正常的,因为在Linux下安装Oracle的确不会自行启动,必须要自行设定相关参数。

首先先介绍一般而言如何启动oracle。

一、在Linux下启动Oracle

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

#su–oracle

接着输入:

$sqlplus"/assysdba"

原本的画面会变为

SQL>

接着请输入

SQL>startup

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

另外停止数据库的指令如下:

SQL>shutdownimmediate

二、检查OracleDB监听器是否正常

回到终端机模式,输入:

$lsnrctlstatus

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

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

$lsnrctlstart

启动监听器

三、启动emctl

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

$emctlstartdbconsole

这个指令运行时间较长。

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

四、Oracle启动&停止脚本

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

#vi/etc/oratab

orcl:/opt/oracle/102:Y

#Entriesareoftheform:

#$ORACLE_SID:$ORACLE_HOME:<N|Y>:

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

#!/bin/sh

#chkconfig:358010

#description:Oracleautostart-stopscript.

#

#SetORA_HOMEtobeequivalenttothe$ORACLE_HOME

#fromwhichyouwishtoexecutedbstartanddbshut;

#

#SetORA_OWNERtotheuseridoftheownerofthe

#OracledatabaseinORA_HOME.

ORA_HOME=/opt/oracle/102

ORA_OWNER=oracle

if[!-f$ORA_HOME/bin/dbstart]

then

echo"Oraclestartup:cannotstart"

exit

fi

case"$1"in

'start')

#StarttheOracledatabases:

echo"StartingOracleDatabases..."

echo"-------------------------------------------------">>/var/log/oracle

date+"%T%a%D:StartingOracleDatabasesaspartofsystemup.">>/var/log/oracle

echo"-------------------------------------------------">>/var/log/oracle

su-$ORA_OWNER-c"$ORA_HOME/bin/dbstart">>/var/log/oracle

echo"Done"

#StarttheListener:

echo"StartingOracleListeners..."

echo"-------------------------------------------------">>/var/log/oracle

date+"%T%a%D:StartingOracleListenersaspartofsystemup.">>/var/log/oracle

echo"-------------------------------------------------">>/var/log/oracle

su-$ORA_OWNER-c"$ORA_HOME/bin/lsnrctlstart">>/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')

#StoptheOracleListener:

echo"StopingOracleListeners..."

echo"-------------------------------------------------">>/var/log/oracle

date+"%T%a%D:StopingOracleListeneraspartofsystemdown.">>/var/log/oracle

echo"-------------------------------------------------">>/var/log/oracle

su-$ORA_OWNER-c"$ORA_HOME/bin/lsnrctlstop">>/var/log/oracle

echo"Done."

rm-f/var/lock/subsys/oracle

#StoptheOracleDatabase:

echo"StopingOracleDatabases..."

echo"-------------------------------------------------">>/var/log/oracle

date+"%T%a%D:StopingOracleDatabasesaspartofsystemdown.">>/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')

$0stop

$0start

;;

esac

3.改变文件权限

#chmod755/etc/init.d/oracle

4.添加服务

#chkconfig--level35oracleon

5.需要在关机或重启机器之前停止数据库,做一下操作

#ln-s/etc/init.d/oracle/etc/rc0.d/K01oracle//关机

#ln-s/etc/init.d/oracle/etc/rc6.d/K01oracle//重启

6.使用方法

#serviceoraclestart//启动oracle

#serviceoraclestop//关闭oracle

#serviceoraclerestart//重启oracle

7.测试

a.开机自启动

b.serviceoraclestop

c.serviceoraclestart

d.serviceoraclerestart

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

相关推荐