DBControl 问题
时间:2010-10-13 来源:robin hu
前天试了下动态监听结果今天发现DBControl出问题了 。症状:
1. 输入URL后不提醒用户输入用户名和 密码就直接打开EM页面了,但所有管理Tab页都消失了,只有一个最简单基本的页面显示数据库的当前状态。
2. 如果点击database setting按钮,可出现登录页面,但输入正确的 用户名和密码后报错:listener不能识别连接字符串。发现在连接字符串中service_name=DB10g21,而采用动态监听后,service_name自动加上了db_domain,变成了DB10g21.robin.cn,当然就无法识别了。
解决方法一:
还是采用静态监听。在listener.ora里加上所监听的sid即可,这样可以看到(lsnrctl status)在listener里,有个不带db_domain后缀的service_name.
奇怪的是刚开始该方法并未立即奏效(已执行lsnrctl reload, 也用lsnrctl staus 检查过),我记得曾用alter system set service_names=’RH2’ scope=both; 改过系统service_names参数, 于是尝试用alter system set service_names=’DB10g21’ scope=both;改回去,再试就OK了。 我觉得应该只需要改 listener.ora采用静态监听就可以了啊,应该不需要去改service_names参数的。后面反复测试,都没法通过修改service_names参数来影响dbcontrol. 而一旦改了listener.ora采用动态监听,问题马上重新。
解决方法二:
采用动态监听。DBcontrol的连接字符串放在配置文件:$ORACLE_HOME/hostname_sid/sysman/config/emoms.properties里,修改它然后重启dbcontrol应该就可以了。不知为何,执行emctl stop dbcontrol,报错“Failed to shutdown DBConsole Gracefully” metalink里提供了两种解决方案:
1.修改/etc/hosts, 加上
127.0.0.1 localhost.localdomain localhost
或者
2.重新配置dbcontrol.
emca –deconfig dbcontrol db
emca –config dbcontrol db
试了2种方案都不行,仍然不能stop. 另外改emoms.properties似乎也没用。改后(去掉db_domain的后缀,采用静态监听),在打开oem页面时,显示的service_name仍然是DB10g21.robin.cn. 但下面的 错误解决了:
“Io exception: The Network Adapter could not establish the connection”
该错误在采用动态监听时连进去后点“performance ”按钮时报上述错误。采用静态监听,解决。
遗留问题:
1. 为什么不能stop dbconsole?