欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

解决OracleDBConsoleorcl不能启动,报错误码

程序员文章站 2024-02-14 21:07:40
...

今天来公司启动电脑,到登陆界面,电脑报有个服务启动失败,我的电脑没有新装软件,周六还没有问题,怎么突然报这个错误?于是到

今天来公司启动电脑,到登陆界面,电脑报有个服务启动失败,我的电脑没有新装软件,周六还没有问题,怎么突然报这个错误?于是到事件查看器中看看什么问题,显示是OracleDBConsoleorcl启动失败,到服务里一看,确实没有启动。手动启动一下,报错误码2
我装的是10g,于是到ORACLEproduct10.2.0db_1test_orclsysmanlog目录看一下log里写了什么,打开OracleDBConsoleorclsrvc.log.
log最后记录的是:

————– [OracleDBConsoleorcl] ————
EMDROOT=c:oracleproduct10.2.0db_1
ORACLE_HOME=c:oracleproduct10.2.0db_1
EMDSTATE=c:oracleproduct10.2.0db_1wangzh_orcl
CONSOLE_CFG=dbconsole
TRACE_LEVEL=16
TIMEOUT=15
12/10/07 10:56:03 Start pending…
12/10/07 10:56:03 Verifying dbconsole is not started already. Command line "c:oracleproduct10.2.0db_1binemctl.bat" istatus dbconsole
12/10/07 10:56:04 dbconsole launch commandline is "c:oracleproduct10.2.0db_1binemctl.bat" istart dbconsole
12/10/07 10:56:04 Tracking process launch…
12/10/07 10:56:34 dbconsole exited with retCode 2.
12/10/07 10:56:34 Check c:oracleproduct10.2.0db_1test_orclsysmanlogemdbconsole.nohup for details

日志让看emdbconsole.nohup文件,目录里没有这个文件呀。

手动执行一下emctl.bat,于是启动控制台,执行emctl.bat istart dbconsole,报错,ORACLE_SID没有定义,打开emctl.bat看看,这里是定义环境变量的地方,其中已经设置了这些:

if not defined REMOTE_EMDROOT (set ORACLE_HOME=Ec:oracleproduct10.2.0db_1)
if not defined REMOTE_EMDROOT (set EMDROOT=%ORACLE_HOME%)
if defined REMOTE_EMDROOT (set ORACLE_HOME=%REMOTE_EMDROOT%)
if defined REMOTE_EMDROOT (set EMDROOT=%ORACLE_HOME%)
if defined REMOTE_EMDROOT (set LOCAL_EMDROOT=c:oracleproduct10.2.0db_1)
……
后边还有一条设置:

if not defined DBCONSOLE_SERVICE_NAME (set DBCONSOLE_SERVICE_NAME=OracleDBConsole%ORACLE_SID%),用到了
ORACLE_SID,但没有看到前面设置,只能手动设置ORACLE_SID试试,于是加了一条设置:

if defined REMOTE_EMDROOT (set ORACLE_SID=orcl) orcl是我的数据库实例名

到服务中启动OracleDBConsoleorcl,ok,没有报错;

重新启动计算机,也没有报错,OracleDBConsoleorcl服务也启动了

解决OracleDBConsoleorcl不能启动,报错误码