Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6567167
  • 博文数量: 1005
  • 博客积分: 8199
  • 博客等级: 中将
  • 技术积分: 13071
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-25 20:19
个人简介

脚踏实地、勇往直前!

文章分类

全部博文(1005)

文章存档

2020年(2)

2019年(93)

2018年(208)

2017年(81)

2016年(49)

2015年(50)

2014年(170)

2013年(52)

2012年(177)

2011年(93)

2010年(30)

分类: Oracle

2019-01-04 16:54:25

1.数据库开启审计
alter system set audit_trail=db,extended scope=spfile;
shutdown immediate
startup

2.对某个表进行审计
connect / as sysdba
SQL> show user;
USER is "SYS"

SQL> audit select table by hxl by session;

Audit succeeded.

以上语句执行后在 dba_stmt_audit_opt 视图会有相应的记录
SQL> set linesize 1000;
SQL> select user_name, audit_option, success, failure from dba_stmt_audit_opts;


USER_NAME                      AUDIT_OPTION                             SUCCESS    FAILURE
------------------------------ ---------------------------------------- ---------- ----------
HXL                            SELECT TABLE                             BY SESSION BY SESSION


3.使用hxl用户登录,查询该用户下的一个表
SQL> connect hxl/oracle
Connected.
SQL> select count(1) from tb_test;

  COUNT(1)
----------
        18

然后查询审计日志表,发现已经有记录了
SQL> Select Count(1) From dba_audit_trail  Where obj_name In ('TB_TEST');

  COUNT(1)
----------
         1

4.取消审计
若我想把上面的审计取消,步骤如下
connect / as sysdba
SQL> noaudit select table by hxl;

Noaudit succeeded.

发现配置表dba_stmt_audit_opt相应的记录已经取消

退出原有的hxl查询会话(必须退出,pl/sql需要关闭再登录,否则还会一直有审计),再次登陆查询就不会有审计记录了.

-- The End --
阅读(10773) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~