创建em资料库的系列问题 ora-47999

版权所有,不得转载!

1.dvca的使用
dvca -action option -oh %ORACLE_HOME% -jdbc_str jdbc:oracle:oci:@orcl -sys_passwd oracle -owner_account dvo -owner_passwd oracle_1
出现异常
java.lang.NoClassDefFoundError: oracle/security/misc/Checksum
解决办法:在ORACLE_HOME/jlib下找到ojmisc.jar放到ORACLE_HOME/jdk/jre/lib/ext下
2.
D:\>dvca -silent -action disable -service oracleserviceorcl -sys_passwd oracle -owner_account dvo -owner_passwd oracle_1 -logfile c:\a.log
oracle 11g中使用dvca失败,提示错误
Exception in thread "main" java.lang.Exception: Version mismatch!
at oracle.security.misc.C11.c(C11)
at oracle.security.misc.Checksum.SHA(Checksum)
at oracle.security.datval.dvca.util.StringUtil.d(StringUtil.java:521)
at oracle.security.datval.dvca.CommandArguments.processArguments(Command
Arguments.java:1072)
at oracle.security.datval.dvca.Dvca.startCA(Dvca.java:71)
at oracle.security.datval.dvca.Dvca.main(Dvca.java:274)

这个问题我也没有解决,后来是通过在database vault下想办法绕过限制完成的。


3.安装database vault后重新创建dbconsole出错
查看emca的三个日志
oracle.sysman.assistants.util.sqlEngine.SQLFatalErrorException: ORA-20001: SYSMAN already exists..

查看drop日志,有下面的错误,SYSMAN用户并未删除掉。如果进入
第 1 行出现错误:
ORA-01031: 权限不足
ORA-06512: 在 line 113

用dvam管理用户登录,将dv_accmgr角色赋予sys

4.安装oracle database vault后,创建触发器出错,bug,应升级到10.2.0.4,但11.1.0.6版本仍然有此问题,
bug号为5696532,目前没有看到修复
ORA-47999: internal Database Vault error: create trigger
暂时解决办法:
登录dvo 禁用触发器dvsys.DV_BEFORE_DDL_TRG 增加触发器后再启用。

5.删除资料档案库
emca -deconfig dbcontrol db -repos drop
手工删除em资料库的方法,不能漏掉,否则创建时会报错
drop user sysman cascade;
drop user mgmt_view cascade;
drop role mgmt_user;


6.创建资料库异常
emca -config dbcontrol db -repos create
java.sql.SQLException: ORA-04063: package body "SYSMAN.MGMT_AUDIT_LOG" has
errors ORA-06508: PL/SQL: could not find program unit being called ORA-06512:
at "SYSMAN.EM_TARGET", line 1615 ORA-06512: at "SYSMAN.MGMT_TARGET", line 2705
ORA-06512: at line 1

解决办法:要注意在emca创建好sysman之后马上就登录赋权,要抢在创建包前就把权限赋完。
1.sysman登录,编译
SQL> exec emd_maintenance.recompile_invalid_objects;
2.检查状态
SQL> select object_name, object_type from dba_objects where owner='SYSMAN' and status='INVALID';
3.如果仍然无效
SQL> conn / as sysdba
SQL> grant execute on utl_file to sysman;
SQL> conn sysman
SQL> alter package mgmt_audit_log compile;

7.em没有dva的web应用 404问题
oracle 11gR1在选择database vault组件后也不会自动部署dva的web应用,
这就需要我们手工在oc4j中部署。部署方法在我的上一篇文档中可以看到。
http://blog.csdn.net/wonder4/archive/2008/12/17/3540184.aspx
在重建em资料库后也会删除dva的web应用,也需要重新部署。

你可能感兴趣的:(oracle,sql,jdbc,Security,ext)