oracle数据库开机自启

  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 functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs
ORACLE_BASE=/u01/app
ORACLE_HOME=$ORACLE_BASE/oracle
ORACLE_SID=hfdpc; export ORACLE_SID
PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH LANG

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

wKiom1aVnXfAmAXNAANsnPXK7Q4341.jpg

修改好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/local
su 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”

wKioL1aVpNvDZ93nAAS2cI_8UNU783.jpg

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

wKioL1aVpo_RiGjXAAPQ8JXspgU444.jpg

wKiom1aVpmGx6uD2AAKIWYlyvaw152.jpg

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

wKiom1aVpsfSmndGAAA3hMxf7IA498.png


你可能感兴趣的:(oracle,数据库)