Linux如何启动Oracle

2025-10-29 07:16:24

1、手工启动:

[oracle@crmdb ~]$ lsnrctl start

[oracle@crmdb ~]$ dbstart

[oracle@crmdb ~]$ emctl start dbconsole

2、应对shared memory realm does not exist 错误的处理

1、实例没有启动

sqlplus /nolog

connect / as sysdba

startup

3、监听器启动出现问题:

ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener  

使用oracle用户执行dbstart启动数据库提示如下:

ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener

Usage: /oracle/11g/bin/dbstart ORACLE_HOME

Processing Database instance "orcl": log file /oracle/11g/startup.log

修改dbstart以及dbshut两个文件

1、第一步: 

把ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle注释掉

然后修改/home/oracle/.bash_profile 

添加export ORACLE_HOME_LISTNER=$ORACLE_HOME一句 

生效变量: 

[root@oracle01 ~]# source /home/oracle/.bash_profile 

2、第二步:

#vi /etc/oratab

找到orcl=/u01/app/oracle:N这一行

改为:

orcl=/u01/app/oracle:Y

也就是将最后的N改为Y,意思是将不允许自动启动改为允许自动启动。即可解决问题$

3、自动启动的脚本:

**********1******************************

首先修改/etc/oratab文件

#vi /etc/oratab

找到orcl=/u01/app/oracle:N这一行

改为:

orcl=/u01/app/oracle:Y

也就是将最后的N改为Y,意思是将不允许自动启动改为允许自动启动。

1、*********2************************************

启动了Linux系统之后,转到  /etc/init.d  目录下;

[root@oracle ~]# cd /etc/init.d

使用 vi 命令,新建一个以 oracle 命名的文件(并将以下代码复制至文件中)

[root@oracle init.d]# vi oracle

以下是代码:

曾经出现过一个问题:

“服务不支持 chkconfig”:——这个提示是因为oracle自启动脚本前面必须要有以下这两行

#chkconfig: 2345 00 01

#description:oracle 11g service

--------------------------------------------------------------------------------------------------------------

#!/bin/sh

# chkconfig: 345 61 61

# description: Oracle 11g AutoRun Services

# /etc/init.d/oracle

#

# Run-level Startup script for the Oracle Instance, Listener, and

# Web Interface

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=$ORACLE_BASE/oracle

export ORACLE_SID=zqaccp

export PATH=$PATH:$ORACLE_HOME/bin

ORA_OWNR="oracle"

# if the executables do not exist -- display error

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]

then

     echo "Oracle startup: cannot start"

     exit 1

fi

# depending on parameter -- startup, shutdown, restart

# of the instance and listener or usage display

case "$1" in

 start)

     # Oracle listener and instance startup

     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart

     echo "Oracle dbserver Start Succesful!OK."

     su $ORA_OWNR -lc "$ORACLE_HOME/bin/emctl start dbconsole"

     echo "Oracle dbconsole Start Succesful!OK."

     su $ORA_OWNR -lc "$ORACLE_HOME/bin/lsnrctl start"

     echo "Oracle Listeners Start Succesful!OK."

     ;;

 stop)

     # Oracle listener and instance shutdown

     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut

     echo "Oracle Stop Succesful!OK."

     ;;

 reload|restart)

     $0 stop

     $0 start

     ;;

 *)

     echo $"Usage: `basename $0` {start|stop|reload|reload}"

     exit 1

esac

exit 0

2、在编辑完成之后,使用 :x  命令保存此文件。 

赋予执行权限

[root@oracle init.d]# chmod 750 /etc/init.d/oracle

链接:

[root@oracle init.d]# ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle

[root@oracle init.d]# ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle

执行以下命令:

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

[root@oracle init.d]# chkconfig --add oracle         //添加到服务里

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢