创建ACL时出现Oracle 11G XE-ORA-46105错误

时间:2011-12-01 10:16:16

标签: oracle oracle11g acl oracle-xe

我在Windows 2008 R2服务器上手动创建了一个数据库 - 64位上安装了Oracle 11G - Express Edition。我还手动安装了XDB。

我已通过执行

验证了XDB安装

Select comp_name,status,version from dba_registry的输出是: -

COMP_NAME                          STATUS VERSION
Oracle XML Database                VALID  11.2.0.2.0
Oracle Database Catalog Views      VALID  11.2.0.2.0
Oracle Database Packages and Types VALID  11.2.0.2.0

我有一个使用UTL_SMTP发送电子邮件的软件包。 (注意:此数据库与此包一起从Oracle 8 迁移)

我正在尝试根据Oracle 11G的要求添加一个用于UTL_SMTP的ACL。 我正在使用的代码是

BEGIN
  dbms_network_acl_admin.create_acl(acl => 'mailserver_acl.xml',
  description => 'Email permissions for App',
  principal => 'MYUSER', is_grant => TRUE, privilege => 'connect');
END;
/

但是,执行上面的代码会给我一个错误

ORA-46105:无法加载安全类DAV :: dav ORA-06512:在“SYS.DBMS_NETWORK_ACL_ADMIN”,第252行 ORA-06512:第2行

我尝试过卸载XDB并重新安装,但无济于事。

有Oracle经验的人是否知道安装XDB是否足以创建ACL,还是还需要安装其他依赖项?

1 个答案:

答案 0 :(得分:1)

Oracle 11g XE主目录中的文件夹rdbms / xml中缺少XML文件。尝试从其他版本的Oracle数据库(即SE 11.2.0.3)获取丢失的文件,然后重新安装XDB。