1. 登录系统后,切换到oracle用户,查看oracle_home是否设置

[oracle@localhost ~]$ echo $ORACLE_HOME/u01/app/oracle

       如果查询的结果是空的话,需要编辑/home/oracle/.bash_profile

[oracle@localhost ~]$ vim /home/oracle/.bash_profile # .bash_profile# Get the aliases and functionsif [ -f ~/.bashrc ]; then        . ~/.bashrcfi# User specific environment and startup programsORACLE_BASE=/u01/appORACLE_HOME=$ORACLE_BASE/oracleORACLE_SID=hfdpc; export ORACLE_SIDPATH=$ORACLE_HOME/bin:$PATH:$HOME/binLD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/libexport ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH LANG

oracle_home的路径可以在 /etc/oratab下面看

修改好oracle_home的设置后,需要使脚本生效,

[oracle@localhost ~]$ source /home/oracle/.bash_profile

2.修改/etc/oratab 的配置,需要切换到root用户

[root@localhost ~]$ cat /etc/oratab hfdpc:/u01/app/oracle:N

把上面的"N"修改成"Y"

[root@localhost ~]$ cat /etc/oratab hfdpc:/u01/app/oracle:Y

3.编辑启动脚本/etc/rc.d/rc.local,添加数据库启动脚本dbstart和监听启动脚本,需要切换到root用户进行操作

[root@localhost ~]$ cat /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

在脚本里面加上oracle自带的启动脚本dbstart和监听启动脚本,编辑好后保存

[root@localhost ~]$ cat /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/localsu oracle -lc "/u01/app/oracle/bin/lsnrctl start"su oracle -lc /u01/app/oracle/bin/dbstart

4.切换到oracle用户,在$ORACLE_HOME/bin路径下,执行dbstart

[root@localhost ~]# su - oracle[oracle@localhost ~]$ cd /u01/app/oracle/bin/[oracle@localhost bin]$ dbstart

*在$ORACLE_HOME/bin下执行dbstart,报错“Failed to auto-start Oracle Net Listene using /ade/vikrkuma_new/oracle/bin/tnslsnr“。原因是dbstart调用的tnslsnr脚本位置有错。

解决的方法是:编辑$ORACLE_HOME/bin/dbstart,

查找“ORACLE_HOME_LISTENER”变量的定义处,

修改“ORACLE_HOME_LISTENER=/ade/vikrkuma_new/oracle”为“ORACLE_HOME_LISTENER=$ORACLE_HOME”

5.重启数据库,查看数据库和监听是否启动

6.查看数据库是否处于open,保证数据库可用