浏览器中可以正常访问dbconsole,可是服务器端无法查看dbconsole的运行状态
我安装的是Oracle 11g,Oracle的在线文档中说要从浏览器中访问Database Control console process,那么在Oracle服务器上必须起动了Database Control console process dbconsole。
事实上是我可以通过浏览器访问dbconsole,可是当我在oracle服务器上运行命令emctl status dbconsole查看dbconsole的运行状态时报如下错误,
Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name.
我的疑问是:既然我可以在浏览器中访问dbconsole了,那也就意味着服务器上的dbconsole服务已经起动起来了,并且运行正常,那为什么在服务器上查询服务状态的时候还会报这样的错误信息?
------解决方案--------------------
请参考:
其实就是em的问题重新配置emca即可。以后注意之前设置好ORACLE_UNQNAME 。
总结收藏:
1,修改DBSNMP密码:
重新配置DBCONSOLE,需要输入DBSNMP密码,但任何密码都会显示错误,需要预先修改。
sql>alter user dbsnmp identified by xxx;
2,删除早期DBCONSOLE创建的用户:
sql>drop role MGMT_USER;
sql>drop user MGMT_VIEW cascade;
sql>drop user sysman cascade;
3,删除早期DBCONSOLE创建的对象:
sql>drop PUBLIC SYNONYM MGMT_TARGET_BLACKOUTS;
sql>drop public synonym SETEMVIEWUSERCONTEXT;
4,重新创建DBCONSOLE:(如果是在windows下,要先到注册表删除DBCONSOLE的服务,重启电脑)
$emca -config dbcontrol db -repos create
如果此命令还是失败,可直接利用重建命令:
$emca -config dbcontrol db -repos recreate
根据提示,先输入SID,再输入Y继续;
输入端口1521,输入SYS密码,输入DBSNMP密码,输入SYSMAN 密码,输入Y继续
完成。
5,检查状态 emctl status dbconsole。