Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1434076
  • 博文数量: 556
  • 博客积分: 12626
  • 博客等级: 上将
  • 技术积分: 5799
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-11 15:56
个人简介

从事IT基础架构多年,发现自己原来更合适去当老师……喜欢关注新鲜事物,不仅限于IT领域。

文章分类

全部博文(556)

文章存档

2019年(6)

2018年(15)

2017年(17)

2016年(11)

2015年(2)

2014年(2)

2013年(36)

2012年(54)

2011年(100)

2010年(41)

2009年(72)

2008年(14)

2007年(82)

2006年(104)

分类: Oracle

2009-08-13 17:45:02

    好久没更新blog了,换了个新环境很多事还要重新做起啊,呵呵。
    刚来没多久就有人要求解决oracle10G EM dbconsole的问题。不怎么习惯用em,虽然是个不错的东西,但平白占用一块主机资源不是很喜欢。
   先熟悉了一下emctl和emca的命令。之后用emctl start dbconsole启动,发现系统不停的报错:
Exception in thread "main" java.lang.UnsatisfiedLinkError: haltImpl
at java.lang.Shutdown.halt(Shutdown.java:184)
at java.lang.Shutdown.exit(Shutdown.java:256)
at java.lang.Runtime.exit(Runtime.java:123)
at java.lang.System.exit(System.java:791)
at oracle.sysman.emSDK.conf.TargetInstaller.main(TargetInstaller.java:4183)

类似的错误循环不断,不像是em本身的问题,一查果然是oracle自动档jdk有问题了,为什么就不知道了。把系统本身的jdk(/usr/java14)直接link到了$ORACLE_HOME/jdk下,此问题解决,接着新的问题来了,系统报错说EM找不到一个目录,目录格式为hostname_dbsid,而且执行emctl目录后面总是跟了一大窜信息:
ps: 0509-048 Flag -o was used with invalid list.
ps: Not a recognized flag: -
Usage: ps [-ANPaedfklmMZ] [-n namelist] [-F Format] [-o specifier[=header],...]
[-p proclist][-G|-g grouplist] [-t termlist] [-U|-u userlist] [-c classlist] [ -T
pid] [ -L pidlist]
Usage: ps [aceglnsuvwxU] [t tty] [processnumber]
这段信息是aix下的一个bug,oracle的信息如下:

Cause

In emctl.pl we have a command as below:
ps -p $PID -o cmd --cols 1000 |grep DEMDROOT

In AIX platforms for some OS kernels, this command doesn't work. The correct command is:
ps -p $PID -o args | grep DEMDROOT

Solution

If you get these errors while starting DBConsole, follow below action plan: 

Follow below action plan.

a) Stop DBConsole - 'emctl stop dbconsole'
b) Take backup of 'emctl.pl' from $ORACLE_HOME/bin
c) Edit emctl.pl and goto line number 1249, which is:
my $ps=`ps -p $PID -o cmd --cols 1000 |grep DEMDROOT`;
Modify above line as below:
my $ps=`ps -p $PID -o args | grep DEMDROOT`;
d) Save the file.
e) Start DBConsole - 'emctl start dbconsole' from $ORACLE_HOME/bin

非常无奈,找此处理,问题解决,接下来就是目录不存在的问题了。查了一些信息说这是hostname变更以后的结果,大概核实了一下,此种可能性很大。需要重新配置em,因此用命令:

emca -config dbcontrol db

改过之后发现系统自己把端口改变了(原来是1158,现在是5500),试图改回,发现1158被占用,反正无所谓了,5500能使就行。

总得感觉em发现问题很难搞,出了问题提示信息太少,不喜欢。

后面文章附几篇文档,有空仔细看看。

阅读(2032) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~