ORA-47407: ALWAYS AUDIT option set for Rule Set string ORACLE 报错 故障修复 远程处理

文档解释

ORA-47407: ALWAYS AUDIT option set for Rule Set string

Cause: The rule set audit option is set to always audit

Action: No action required

ORA-47407:Always Audit 非常使用 Oracle。这是一个数据库错误,指明规则集(Rule Set)已经设置了Always Audit选项,但实际上没有设置 对应的Always Action类型。

官方解释

ORA-47407 是指在设置一下总是触发审核事件时,没有针对此规则集定义审核动作类型。

例如:

DBMS_FGA.add_policy (

object_schema => ‘HR’,

object_name => ‘EMP’,

policy_name => ’emp_audit’,

audit_condition => ‘Sal=3000’,

audit_column => ‘Name’,

audit_trail => DBMS_FGA.DB

);

— disabling the above policy

DBMS_FGA.drop_policy(

object_schema => ‘HR’,

object_name => ‘EMP’,

policy_name => ’emp_audit’

);

上面示例代码,删除策略前需要先设置 Always Audit 选项,但是没有设置 Always Action 类型,会导致这个问题。

常见案例

1. 在删除一个审核策略时,忘记先将Always Audit 选项设置为true,或者忘记定义 Always Action 类型导致了这个错误。

一般处理方法及步骤

1. 确认并记录下此审计规则集(Rule Set);

2. 使用 DBMS_FGA.add_policy 函数或 ALTER SYSTEM SET FGA_POLICIES 命令重新设置审计策略;

3. 清理数据库审计报错,使用 DBMS_FGA.drop_policy 删除之前设置的失效策略;

4. 确认审计问题已经解决。


数据运维技术 » ORA-47407: ALWAYS AUDIT option set for Rule Set string ORACLE 报错 故障修复 远程处理