• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Oralce数据导入出现(SYSTEM.PROC_AUDIT)问题处理方法
    将A数据的USERNAME用户的数据导出后,再导入到B数据库中的USERNAME时,在USERNAME用户下在执行表数据查询时出现如下问题:
    ORA-06550: 第 1 行, 第 7 列:
    PLS-00201: 必须声明标识符 'SYSTEM.PROC_AUDIT'
    ORA-06550: 第 1 行, 第 7 列:
    PL/SQL: Statement ignored
    出现这个问题是由于A数据库打开了审计,而导入到B数据库时,B数据库审计没有打开,数据库中没有SYSTEM.PROC_AUDIT对象,导致上述问题.

    问题解决过程如下:
    1)以sysdba登录数据库:
    D:\Users\Administrator>sqlplus / as sysdba

    2) 显示当前审计参数:
    SQL> show parameter audit;
    NAME TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    audit_file_dest string J:\APP\ADMINISTRATOR\ADMIN\ORC
    L\ADUMP
    audit_sys_operations boolean FALSE
    audit_trail string DB

    3) 启用审计.
    SQL> alter system set audit_sys_operations=TRUE scope=spfile;
    系统已更改。

    4)查看新的状态,还是显示审计操作没打开,需重新启动数据库:
    SQL> show parameter audit;
    NAME TYPE VALUE
    ------------------------------------ ----------- --------------------------
    audit_file_dest string J:\APP\ADMINISTRATOR\ADMIN
    L\ADUMP
    audit_sys_operations boolean FALSE
    audit_trail string DB

    5)重启数据库
    SQL> shutdown immediate
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup
    ORACLE 例程已经启动。
    Total System Global Area 3056513024 bytes
    Fixed Size 2179656 bytes
    Variable Size 1644170680 bytes
    Database Buffers 1392508928 bytes
    Redo Buffers 17653760 bytes
    数据库装载完毕。
    数据库已经打开。

    6)重新查看审计状态,审计已打开.
    SQL> show parameter audit;
    NAME TYPE VALUE
    ------------------------------------ ----------- --------------------------
    audit_file_dest string J:\APP\ADMINISTRATOR\ADMIN
    L\ADUMP
    audit_sys_operations boolean TRUE
    audit_trail string DB
    SQL> conn USERNAME/PWDXXXXXX;
    已连接。

    7)查询表数据,错误依然,但错误换成了SYSTEM.PROC_AUDIT无效:
    SQL> select * from corporationhot;
    select * from corporationhot
    *
    第 1 行出现错误:
    ORA-06550: 第 1 行, 第 14 列:
    PLS-00905: 对象 SYSTEM.PROC_AUDIT 无效
    ORA-06550: 第 1 行, 第 7 列:
    PL/SQL: Statement ignored

    8)将对象SYSTEM.PROC_AUDIT授权给USERNAME.
    SQL> grant execute on SYSTEM.PROC_AUDIT TO USERNAME;
    授权成功。

    9)再次以USERNAME登录,执行数据表查询,提示对象 SYSTEM.PROC_AUDIT 无效;因为对象已经授权,出现这种状况可能是对象有错误.
    SQL> conn USERNAME/PWDXXXXXX;
    已连接。
    SQL> select * from TABLENAME;
    select * from TABLENAME *
    第 1 行出现错误:
    ORA-06550: 第 1 行, 第 14 列:
    PLS-00905: 对象 SYSTEM.PROC_AUDIT 无效
    ORA-06550: 第 1 行, 第 7 列:
    PL/SQL: Statement ignored

    10) 找到SYSTEM.PROC_AUDIT存储过程,发现有编译错误,提示sys.v_$sql,v$sql_bind_capture,sys.v_$session为无
    效标识符,由于上述对象是存在的,而且可以查询,因此怀疑是权限设置问题,做如下授权:
    SQL> conn / as sysdba;
    已连接。
    SQL> grant all on sys.v_$sql to system
    2 ;
    授权成功。
    SQL> grant all on v$sql_bind_capture to system;
    授权成功。
    SQL> grant all on sys.v_$session to system;
    授权成功。

    11)SYSTEM.PROC_AUDIT编译通过后,以USERNAME登录数据库,查看表数据恢复正常,问题解决.
    为了验证错误是不是导出时审计是开的,导入时审计未打开所致,重新将审计关闭:
    SQL> alter system set audit_sys_operations=FALSE scope=spfile;
    系统已更改。
    SQL> restart;
    SP2-0042: 未知命令 "restart" - 其余行忽略。
    SQL> shutdown immediate;
    数据库已经关闭。
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup;
    ORACLE 例程已经启动。
    Total System Global Area 3056513024 bytes
    Fixed Size 2179656 bytes
    Variable Size 1644170680 bytes
    Database Buffers 1392508928 bytes
    Redo Buffers 17653760 bytes
    数据库装载完毕。
    数据库已经打开。

    12)数据库重启后,以USERNAME用户登录查询数据正常.
    您可能感兴趣的文章:
    • Oralce 归档日志开启与关闭示例
    • 设置oralce自动内存管理执行步骤
    • 提取oralce当天的alert log的shell脚本代码
    • Oracle数据库opatch补丁操作流程
    • mysql数据库迁移至Oracle数据库
    • Oracle数据库ORA 54013错误的解决办法
    • VMware Workstation/Fusion 中安装 Fedora 23/24 及其他 Linux 系统时使用 Open VM Tools 代替 VMware Tools 增强工具的方法
    • oracle 创建字段自增长实现方式
    • Oracle触发器trigger详解
    • oracle 数据按主键删除慢问题的解决方法
    • Linux 自动备份oracle数据库详解
    • ORACLE实现自定义序列号生成的方法
    • ReactNative (API)AsyncStorage存储详解及实例
    • 查询Oracle中正在执行和执行过的SQL语句
    • oralce和db2兼容开发注意事项
    上一篇:delete archivelog all无法清除归档日志解决方法
    下一篇:oracle中fdisk导致的ASM磁盘数据丢失的解决方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Oralce数据导入出现(SYSTEM.PROC_AUDIT)问题处理方法 Oralce,数据,导入,出现,SYSTEM.PROC,