ORA-39181报错

简介:

   今天登陆客户系统,查看备份日志发现有一个报错,经过查阅官方文档解决。

ORA-39181: Only partial table data may be exported due to fine grain access control on "TDDSI_TRANS"."GG_YP_LOG"

系统为11.2.0.3 rac base rhel6.6


APPLIES TO:

Oracle Database - Enterprise Edition - Version 10.2.0.1 and later
Information in this document applies to any platform.
***Checked for relevance on 10-Mar-2014*** 


SYMPTOMS

ERROR:
ORA-39181 :only partial table data may be exported due to fine grain access control

This error appears trying to datapump export a table with FGAC policy enabled against it.

When Expdp runs as the schema owner, if fine grained policies are discovered on tables and if the exporting  user has unrestricted access, then the entire table data is exported.
  
  

CHANGES

A table with FGAC policy enabled against it.

Scenario 1 (unprivileged user)
------------------------------
table: ABC_TAB
partition=yes
table_owner= X_USER
data= 500GB

when expdp X_USER/password parameter=exp_ABC_TAB.par
==>
Getting ORA-39181: Only partial table data may be exported due to fine grain access control


Scenario 2 (privileged user)
-----------------------------
table: ABC_TAB
partition=yes
table_owner= X_USER

when expdp oradba/password parameter=exp_ABC_TAB.par
==>
Getting exported "X_USER"."ABC_TAB":"ABC_TAB_AA"12340 KB   1000 rows
Master table "ORADBA"."ABC_TAB_AA" successfully loaded/unloaded

CAUSE

This is expected behavior.

ORA-39181 is caused by an unprivileged user who tries to export a table with a fine grain access control policiy applied. The table owner is subject to access control and may not be able to export all rows in the table. Only the rows that can be seen by that user are exported. In order to preserve integrity of the table, the user importing the table should have enough privilege to recreate the table with the security policies at import time. 

Action: It is strongly recommended that the database administrator handles the export of this table. 

This as an informational message.

VPD and Oracle Label Security are not enforced during DIRECT path export and similarly, database users granted the EXEMPT ACCESS POLICY privilege, either directly or through a database role, are exempt from VPD enforcements. However, the following policy enforcement options remain in effect even when EXEMPT ACCESS POLICY is granted:

* INSERT_CONTROL, UPDATE_CONTROL, DELETE_CONTROL, WRITE_CONTROL, LABEL_UPDATE, and LABEL_DEFAULT

EXEMPT ACCESS POLICY  is a strong privilege and must be granted with care. For example , grant it to the role exp_full_database role as this role is granted to admin users only.

SOLUTION

To avoid this: 

 Grant the privilege EXEMPT ACCESS POLICY to the exporting user 

 grant exempt access policy to system;

 -or- 

 Disable the VPD policy.










本文转自 roidba 51CTO博客,原文链接:http://blog.51cto.com/roidba/1978522,如需转载请自行联系原作者
目录
相关文章
|
存储 Oracle 关系型数据库
常见Oracle错误都在这了: ORA-00257/ORA-00313/ORA-28000/ORA-28000
常见Oracle错误都在这了: ORA-00257/ORA-00313/ORA-28000/ORA-28000
常见Oracle错误都在这了: ORA-00257/ORA-00313/ORA-28000/ORA-28000
|
Oracle 关系型数据库 数据库
ORA-00600 3020 ORA-10567案例
PlateSpin克隆复制出的Oracle数据库服务器,往往启动数据库实例都会遇到一些杂七杂八的问题。今天测试DR环境时又遇到了一个特殊场景,在此之前,我已经遇到了下面两起案例: ORA-00600: internal error code, arguments: [kcratr1_last...
1388 0
|
Oracle 关系型数据库 数据库
|
Oracle 关系型数据库 数据库
|
Oracle 关系型数据库 数据库
|
SQL 存储 Oracle
ORACLE startup报错之ORA-01261&&ORA-01263&&ORA-00202&&ORA-00205
    系统环境:windows server 2008R2    数据库环境:oracle 11.2.0.1    问题描述:一测试数据库oradb启动时报错ORA-01261&&ORA-00202,报错日志如下: C:\Users\localadmin>sqlplus / as sysdba SQL*Plus: Release 11.
1445 0
|
SQL 监控 Oracle
ORACLE startup报错之ORA-01154&&ORA-01155&&ORA-01033&&ORA-03113
    今天,一实施同事求助,说一地市oracle数据库无法通过远程连接,连接报错如图: 操作系统:windows server2008 R2  数据库版本:oracle 11.2.0.1 初看报错貌似数据库正处在打开或关闭的过程中。
1650 0