ORACLE 11g数据库设置数据库自启动
修改三个文件:
root:/etc/rc.d/rc.local
oracle:$ORACLE_HOME/bin/dbstart
oracle:$ORACLE_HOME/bin/dbshut
oracle:/etc/oratab
1、执行 dbstart
[oracle@oracle ~]$ dbstart
ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener
Usage: /u01/app/oracle/product/11.0.0/dbhome_1/bin/dbstart ORACLE_HOME
错误原因:dbstart和dbshut脚本文件中ORACLE_HOME_LISTNER的设置有问题
[oracle@oracle ~]$ vi $ORACLE_HOME/bin/dbstart
[oracle@oracle ~]$ vi $ORACLE_HOME/bin/dbshut
分别打开两个文件修改(50行左右)
ORACLE_HOME_LISTNER=$1
修改为:
ORACLE_HOME_LISTNER=$ORACLE_HOME
修改后保存退出,问题解决
2、Linux启动时自动启动Oracle监听和实例
第一步:修改/etc/oratab文件(oracle用户修改)
[oracle@oracle ~]$ vi /etc/oratab
找到: orcl:/u01/app/oracle/product/11.0.0/dbhome_1:N
修改为:orcl:/u01/app/oracle/product/11.0.0/dbhome_1:Y
第二步:把lsnrctl start和dbstart添加到rc.local文件中:(root用户修改)
root权限执行
[root@localhost oracle]# vi /etc/rc.d/rc.local
添加:
su - oracle -lc "/u01/app/oracle/product/11.2.0.4/db/bin/lsnrctl start"
su - oracle -lc "/u01/app/oracle/product/11.2.0.4/db/bin/dbstart"
添加的第一行为开机启动数据库监听服务,第二行为开机启动数据库。(路径跟安装路径相关)。
CentOs7中/etc/rc.d/rc.local不会开机执行,需添加执行权限
[root@localhost oracle]# ll /etc/rc.d/rc.local
[root@localhost oracle]# chmod +x /etc/rc.d/rc.local
3、重启电脑后查看是否自启动成功
查看监听是否自启动成功
[oracle@oracle ~]$ lsnrctl status
查看Oracle服务状态
SQL> select open_mode from v$database;