oracle启动dbstart出错或无反应的解决办法及自启动(Linux平台)
2012-12-10 15:23
501 查看
问题一:
启动dbstart 报错 Failed to auto-start Oracle Net Listene using /ade/vikrkuma_new/oracle/bin/tnslsnr
linux成功安装Oracle10G后切换到Oracle用户后,直接使用”dbstart”($ORACLE_HOME/bin中)启动oracle数据库报错“Failed to auto-start Oracle Net Listene using /ade/vikrkuma_new/oracle/bin/tnslsnr“。原因是dbstart调用的tnslsnr脚本位置有错。解决办法:
打开该脚本:vim $ORACLE_HOME/bin/dbstart,
查找“ORACLE_HOME_LISTENER”变量的定义处,
修改“ORACLE_HOME_LISTENER=/ade/vikrkuma_new/oracle”--〉“ORACLE_HOME_LISTENER=$ORACLE_HOME”
问题二:
[b]启动dbstart 没有反应,即不报错也不显示启动信息[/b]
原因是oracle的配置需要修改才能使用dbstart启动对应的数据实例。解决办法:
su - root
vim /etc/oratab
将类似“orcl:/opt/oracle/product/9.2.0.4:N”-->“orcl:/opt/oracle/product/9.2.0.4:Y”即“N”改为“Y”
问题三
>dbstart
Can't find init file for Database "orcl".
Database "orcl" NOT started.
原因就是没有找到init文件 我的数据库实例是orcl
这个文件在$ORACLE_HOME/dbs/目录下
>cd $ORACLE_HOME/dbs
解决办法就是建立一个initorcl.ora的软连接就可以了
> ln -s spfileego.ora initorcl.ora
问题四:自启动
Linux启动时,会运行一个init程序,然后由init来启动后面的任务,包括多用户环境(inittab中设定)和网络等。运行级就是当前程序运行的功能级别,这个级别从1到6,具有不同的功能。这些级别在/etc/inittab中指定,该文件就是init程序寻找的主要文件。最先运行的服务放在/etc/rc.d目录下。
文件以S开头,代表start(启动),后面的数字是启动顺序;文件以K开头,代表kill(结束),同样,后面的数字代表结束顺序。
例如/etc/rc2.d/S10network代表它与运行级别2有关,10就是他的启动顺序。
目录介绍:
init.d
这个目录中存放了一些服务启动脚本,系统安装时的多个rpm包,这些脚本在执行时可以用来启动,停止和重启这些服务。
rcx.d(x为0~6)
这个目录是启动级别的执行程序链接目录,里面的文件都是指向init.d目录中文件的一些软连接。
配置步骤:
1、修改dbstart和dbshut脚本:dbstart和dbshut两个shell脚本,在oracle11g下,我们需要手动修改一下这两个个脚本,将ORACLE_HOME_LISTNER=$1这行修改为:ORACLE_HOME_LISTNER=$ORACLE_HOME,保存退出
2、修改/etc/oratab:
orcl:$ORACLE_HOME:N修改为orcl:$ORACLE_HOME:Y
将N修改为Y,表示可以在操作系统启动阶段运行oracle数据库
3、vi /etc/rc.d/init.d/oracle,编辑如下信息:
#! /bin/bash # chkconfig: 234 61 61 # description: Oracle 11g AutoRun Service # /etc/rc.d/init.d/oracle case "$1" in start) # starts oracle listener and instance echo "Starting Oracle Database:" su oracle -lc "lsnrctl start" su oracle -lc dbstart ;; stop) # shutdown oracle listner and instance echo "Shuting down Oracle Database:" su oracle -lc "lsnrctl stop" su oracle -lc dbshut ;; reload|restart) $0 stop $0 start ;; *) echo "Usage: {start|stop|reload|restart}" exit 1 esac exit 0
编辑完成后,保存退出
4、检查一下脚本能否正确执行:
cd /etc/rc.d/init.d
./oracle start
./oracle stop
5、执行如下命令:
chmod 750 /etc/rc.d/init.d/oracle
ln –s /etc/rc.d/init.d/oracle /etc/rc2.d/S61oracle
ln –s /etc/rc.d/init.d/oracle /etc/rc3.d/S61oracle
ln –s /etc/rc.d/init.d/oracle /etc/rc4.d/S61oracle
ln –s /etc/rc.d/init.d/oracle /etc/rc0.d/K61oracle
ln –s /etc/rc.d/init.d/oracle /etc/rc6.d/K61oracle
chkconfig –-level 234 oracle on
chkconfig –-add oracle
关于chkconfig,执行chkconfig时,需要在脚本中添加至少两行注释行,第一行告诉chkconfig该服务的运行级别;第二行添加关于服务的一些说明
5、最后重启动一下linux操作系统,检查oracle是否自动启动成功
重新启动后,oracle启动成功,可以在系统启动界面看到相关信息。
相关文章推荐
- linux下dbstart,dbshut无法执行和自动启动Oracle的办法
- dbstart和dbshut启动、关闭数据库报错ORACLE_HOME_LISTNER is not SET解决办法
- Linux Oracle 11g, lsnrctl start 监听服务启动失败解决办法
- Oracle:启动 Database Control 时出错的解决办法
- OracleDBConsoleorcl 启动不了 服务特定错误2【解决办法】
- linux service mysql start出错,mysql启动不了,解决mysql: unrecognized service错误
- oracle启动/停止的几种方法以及 启动和停止过程中出错的解决办法
- 在Linux中Oracle安装成功后,首次启动使用时,会出现的一些问题总结和解决办法
- Linux 下Oracle 开机自启动 与 oratab, dbstart 脚本 说明
- oracle 10g 更换主机名后引起dbcontrol 启动失败的解决办法
- Linux 下Oracle 开机自启动 与 oratab, dbstart 脚本 说明
- Oracle的OracleDBConsoleorcl启动不了的win7解决办法
- 创北机房OracleDBConsole服务无法启动解决办法
- OracleDBConsoleorcl 启动不了 服务特定错误2【解决办法】
- Oracle 9中dbstart命令没有反应和报错的问题解决
- Linux 下Oracle 开机自启动 与 oratab, dbstart 脚本 说明
- 【已解决】Linux 下 启动 NetCA 出错 :Oracle Net Services 配置: No protocol specified
- oracle启动 /停止的几种方法以及 启动和停止过程中出错的解决办法
- 无法启动OracleDBConsoleorcl服务,错误:1053 的解决办法 .
- Linux 下Oracle 开机自启动 与 oratab, dbstart 脚本 说明