Heim >Datenbank >MySQL-Tutorial >Oracle EM相关:动态IP引发的EM不能启动解决

Oracle EM相关:动态IP引发的EM不能启动解决

WBOY
WBOYOriginal
2016-06-07 16:57:311125Durchsuche

网络断掉,不能启动DBConsole服务的解决这个问题有不少刚刚接触的Oracle 10g的XDJM都遇到过,我在笔记本上也遇到过,本来DBConso

网络断掉,不能启动DBConsole服务的解决这个问题有不少刚刚接触的Oracle 10g的XDJM都遇到过,我在笔记本上也遇到过,本来DBConsole是可以用的,但是一旦笔记本是使用无线网卡连网的,所以有时候出去的时候没有接 上wifi的话,也会出现同样的状况。

错误状况:
Window平台
以前的DBConsole是可以启动的,但是拔掉网络启动OracleDBConsoleXXX服务,服务启动不了。

错误排查:
先设置window环境变量 ORACLE_SID=数据库SID
打开cmd
输入 emctl start dbconsole
将会有错误信息提示,如果没有设置ORACLE_SID 则提示
Environment variable ORACLE_SID not defined. Please define it.

如果已经设置了ORACLE_SID 则错误提示为
oc4j configration issue.D:\oracle\product\10.1.0\db_1\oc4j\j2ee\OC4J_DBConsole_localhost_java not found.
其中D:\oracle\product\10.1.0\db_1为你自己机器中ORacle10g的home目录

这个信息非常的重要,也是服务起不来的根本原因
DBConsole是一个java的web application,在建立dbconsole的时候,我们会根据机器以及Oracle的信息创建repos,这个repos就是存放 DBConsole的配置信息的仓库,由于机器断网,会把机器的名字映射为localhost,而建库的时候是默认用的是机器名,所以这时候两个目录不匹 配了,DBConsole找不到配置仓库的目录也就出错了。

解决方案,
解决方案有两种,一种是比较正式的
通过emca重新建立repos
命令如下
emca -config dbcontrol db -repos recreate

方法二是自己实验出来的,并不是一个正式的方法,但是比上一种方法简单,易于操作。
信息提示里找不到一个目录D:\oracle\product\10.1.0\db_1\oc4j\j2ee \OC4J_DBConsole_localhost_java,, 到这个信息提示的上一层目录里一看,可以看到有个类似的目录, 形如OC4J_DBConsole_janes_java, 这里janes是我的机器名,把这个目录copy到当前目录下,改成信息提示里没有找到的目录名,比如 我这里就改成D:\oracle\product\10.1.0\db_1\oc4j\j2ee \OC4J_DBConsole_localhost_java

同时来到D:\oracle\product\10.1.0\db_1目录下,可以找到一个名字形如janes_ORCL的目录,
注意janes_ORCL 这里的janes是我的机器名,ORCL是我这里ORacle的SID,你可以根据你的具体情况,来找到类似的目录, 同样在当前copy到当前目录,并改名为localhost_ORCL.

还有第三方法,不过没有试过
有出现这样问题的帮着试试 set ORACLE_HOSTNAME=localhost

然后通过emctl start dbconsole或者服务里的ORacleDBConsoleXXXX的服务就可以启动了。

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn