我们知道emca可以手工维护oem资料库,但在实际操作过程中,要顺利建立可就不那么轻松了!
以下是个人遇到的问题,记录在案。
一:首次执行 emca -repos create 即报错,查看日志,提示 已经存在oem相关的用户、角色、对象等等?
原因:如果数据库中已经有oem资料库的相关信息,创建即会出错!可能是之前的操作未能正确完成,或本身已经具有oem资料库所致。
解决:emca -repos drop 清理以前的信息,再次执行创建。
二:解决完上面的问题后,仍然创建失败,查看日志,报对象 编译失败!
原因:可能是oracle 10g的bug,oem用户和角色所需的外部 (其他用户对象、系统包、public对象)对象的访问权限不足!
本人就遇到 sysman 用户 无法访问 utl_tcp 包的情况。
解决:在sysdba权限下,根据错误日志的记录,将所需的对象访问权限赋给sysman用户
三:emca -config dbcontrol db 报错,错误提示为 job_queue_processes 必须大于等于1
原因:初始化参数未配置,为0。而oem要求job_queue_processes必须大于等于1
解决:alter system 设置job_queue_processes参数。修改初始化参数文件 设置job_queue_processes 参数。
四:解决上面的问题,仍报错。提示为 执行 CMD /C D:\oracle10g\app\oracle\product\10.2.0\server\bin\emctl.bat deploy dbconsole D:\oracle10g\app\oracle\product\10.2.0\server\oracletest_usercent oracletest:3938 oracletest usercent 时出错
原因:不好意思,安装完oracle后,目录发上改变
解决:修改emctl脚本内的路径内容
%oracle_home%\bin\下的:targetdeploy.pl、emca.bat、emca.pl、emctl.bat
%oracle_home%\sysman\config\下的:emca.properties、emomslogging.properties、emd.properties.emca、emd.properties
注意:尤其是emctl.bat很可能出现变量设置不正确的问题。常见的是perl.exe的路径设置 和 oracle_hostname的设置
五:解决上面的问题应该可以完成 emca -config dbcontrol db操作,建立oem应用程序了。但在登录时,提示 java异常:Error:Java.lang.Exception Exception in sending Request null。
原因:可能是时区设置有问题,还有其他未知原因。
解决:根据emctl resetTZ agent提示重新设置oem的时区。有时 需要修改 oem应用目录下config\的emc.propertities的 agentTZRegion=Asia/Shanghai的设置。
...