解决nmesrvc.exe服务启动异常

启动OracleDBConsoleorcl服务,出现错误,报错代码2

产生错误的原因大概为:IP或者主机名变动、SID未定义等造成
方法一:

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

if not defined REMOTE_EMDROOT (set ORACLE_HOME=E:\oracle\product\11.1.0\db_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:\oracle\product\11.1.0\db_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=miss) miss是我的数据库实例名

到服务中启动OracleDBConsoleorcl,启动成功。  

方法二:
\oracle\product\11.1.0\db_1文件夹下
把localhost_orcl复制为
\db_1\localhost_orcl
\db_1\ 主机名_orcl

例如:

报错: E:\oracle\app\Administrator\product\11.1.0\db_1/10.10.10.1_miss not found

把报错路径中相应的目录改为10.10.10.1_miss

然后同样这样做在如下目录

\db_1/oc4j/j2ee/OC4J_DBConsole_localhost_orcl
\db_1/oc4j/j2ee/OC4J_DBConsole_主机名_orcl

例如:

报错: E:\oracle\app\Administrator\product\11.1.0\db_1/oc4j/j2ee/OC4J_DBConsole_10.10.10.1_miss not found

把报错路径中相应的目录改为OC4J_DBConsole_10.10.10.1_miss

 

参考:http://hkme.iteye.com/blog/163050

你可能感兴趣的:(oracle,C++,c,C#,Blog)