IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    解决Oracle当执行DBMS_NETWORK_ACL_ADMIN.CREATE_ACL创建访问控制列表时报ORA-1410 错误

    suwenzhi发表于 2016-03-06 07:39:49
    love 0

     

    如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

    诗檀软件专业数据库修复团队

    服务热线 : 400-690-3643 备用电话: 13764045638 邮箱:service@parnassusdata.com

     

     

     

    适用于

    Oracle 数据库 – 企业版- 11.1.0.6 到 11.2.0.2 版本[Release 11.1 to 11.2]
    本文档内容适应于任何平台

    症状

    当尝试用dbms_network_acl_admin.create_acl创建一个访问控制列表,执行过程失败,报ORA-01410错误。

    SQL> begin
    2  dbms_network_acl_admin.create_acl (
    3  acl             => 'Mail_UTL_Access.xml',
    4  description     => 'Mail UTL Network Access',
    5  principal       => 'SAGE',
    6  is_grant        => TRUE,
    7  privilege       => 'connect',
    8  start_date      => null,
    9  end_date        => null
    10  );
    11  end;
    12  /
    begin
    *
    ERROR at line 1:
    ORA-01410: ROWID invalid
    ORA-06512: at "SYS.DBMS_NETWORK_ACL_ADMIN", line 252
    ORA-06512: at line 2

     

    原因

    这是因为有一个索引在XDB.XDB$ACL上是无效的或者加载状态,这意味着这个索引不能全面工作。

    解决方案

    删除并重新创建这个索引在XDB.XDB$ACL,如下:

     

    As SYS:

     

    drop index xdb.xdb$acl_xidx force;

      CREATE INDEX "XDB"."XDB$ACL_XIDX" ON "XDB"."XDB$ACL" (OBJECT_VALUE)

         INDEXTYPE IS "XDB"."XMLINDEX" 

        PARAMETERS

        ('PATH TABLE XDBACL_PATH_TAB VALUE INDEX XDBACL_PATH_TAB_VALUE_IDX');

     

    注意!!! 注意文档1103704.1里描述的问题,可能无法删除加载状态的索引直到打好9224305补丁。



沪ICP备19023445号-2号
友情链接