Oracle数据库统一审核的启用测试与关闭
环境:windows server 2008、Oracle 12c R2
下面的步骤,连接为sysdba,除非指定了其它方式。
(1)运行如下查询,确定统一审核是否启用了:
select value from v$option where parameter='Unified Auditing';
在标准安装中,这会返回FALSE。如果返回的是TRUE,表示已经启用了统一审核,则跳到步骤(5)。
(2)关闭Oracle服务。
关闭所有数据库实例和侦听器。在Windows上,也停止所有与Oracle相关的Windows服务。
(3)启用统一审核。
windows上,是复制统一审核动态链接库:
cd %ORACLE_HOME%\bin
copy orauniaud12.dll.dbl orauniaud12.dll
或者直接到%ORACLE_HOME%\bin目录下,手动复制orauniaud12.dll.dbl为orauniaud12.dll
(4)确认统一审核现在已启用。
启动实例和侦听器(在Windows上,启动相关的服务),重新运行步骤(1)中的查询语句,看是否返回TRUE。
(5)创建并启用自己的策略。
create audit policy aud_dba_role roles dba; --创建角色策略
audit policy aud_dba_role by system; --把角色策略赋予system
select policy_name,enabled_opt,user_name from audit_unified_enabled_policies; ---确认已经配置了策略,查询已生效的统一审核策略
(6)测试策略
连接为system用户,执行几个操作。
create user x identified by y; ---创建用户,在12c中,名字前面要加前缀c##,不过可以在pdb中建用户,不用带c##
alter user c##test identified by test;---修改用户密码(12c cdb$root中用户)
alter system set open_cursors=300 scope=memory; ---修改实例参数,仅在内存中生效
exec dbms_audit_mgmt.flush_unified_audit_trail; ---把当前缓存到SGA中的所有记录转存到数据库的审核记录中。
select dbusername,sql_text,audit_type,action_name,object_name,unified_audit_policies from unified_audit_trail; ---查询审核记录
如果有记录,
(7)
连接为sysdba,找到审核记录表。
select table_name from dba_tables where owner='AUDSYS';
上述语句的查询结果为aud$unified,继而查询记录表中的数据
select audit_type,sql_text,event_timestamp,unified_audit_policies from audsys.aud$unified;
默认情况下,不能对表audsys.aud$unified执行DML和DDL操作。即执行语句:delete from audsys.aud$unified会报错。
但是可以通过对unified_audit_trail来操作,删除了unified_audit_trail中的记录之后,,audsys.aud$unified中的记录也被清除了。
(8)清除审核记录
select count(*) from unified_audit_trail;--查询现有审核记录数
execute dbms_audit_mgmt.clean_audit_trail(dbms_audit_mgmt.audit_trail_all,false);--通过dbms_audit_mgmt来管理unified_audit_trail中的审核记录
select count(*) from unified_audit_trail;--再次查询记录,发现只有一行,这一行是刚才清楚数据的那条动作记录。
select count(*) from audsys.aud$unified;--查询也只有一行。
Oracle数据库统一审核的启用测试与关闭的更多相关文章
- Oracle 数据库备份启用压缩以及remap
1. Oracle数据库进行备份恢复 客户测试环境, 有时候需要从现场copy到公司, 压缩虽然能够减少部分空间大小,但是copy到虚拟机里面也时浪费很大量的磁盘,所以能够在备份恢复的过程中执行压缩最 ...
- 转://Linux大内存页Oracle数据库优化
PC Server发展到今天,在性能方面有着长足的进步.64位的CPU在数年前都已经进入到寻常的家用PC之中,更别说是更高端的PC Server:在Intel和AMD两大处理器巨头的努力下,x86 C ...
- 历尽磨难之PL/SQL链接Oracle数据库
说起来都是泪啊,上司布置的任务需要远程连接Oracle数据库,说实话这又是我人生中的第一次.我听到以后觉得不是什么大问题,然而我错了..错的很厉害! 我搞了一天一夜才弄好,这里面原因有很多,大体来讲还 ...
- 测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程
测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程 最近系统出现问题,由于数据库产生的日志量太大无法开启归档模式,导致offline的 ...
- 测试oracle数据库的脱机备份和恢复
环境:windows7.Oracle11g 一.脱机备份 脱机备份是指在数据库关闭情况下的数据备份,也称为冷备份. 在书上学到的备份步骤: 1.记录所要备份数据库文件所在的操作系统路径: 2.关闭数据 ...
- ORACLE 数据库简单测试
ORACLE 数据库简单测试 操作系统:Windows 7 – ORACLE:oracle database 10.2.0.4 一.目的 测试 启动监听程序.数据库 非同一个用户的情况,用户是否可以 ...
- Java 测试连接Oracle数据库是否成功,ojdbc7.jar包下载
需要用到的jar 包: 链接:https://pan.baidu.com/s/1I1pC2f81IvbphZ6tWpVFOg 密码:uq0u 测试结果: package pkg; import jav ...
- loadrunner 脚本开发-调用java jar文件远程操作Oracle数据库测试
调用java jar文件远程操作Oracle数据库测试 by:授客 QQ:1033553122 测试环境 数据库:linux 下Oracle_11g_R2 Loadrunner:11 备注:想学ora ...
- 改写了禁用或启用oracle数据库的约束的存储过程
改写了网上某位大侠(最开始的源头是哪位没记住)写的禁用或启用oracle数据库所有约束的存储过程,增加了异常控制,以使发生异常时也可以执行下去. –调用过程: 执行前先 set serveroutpu ...
随机推荐
- php 使用str_replace替换关键词(兼容字符串,一维数组,多维数组)
通过递归的方式来实现替换字符串. /* * * 使用str_replace替换关键词(兼容字符串,一维数组,多维数组) * $search 需要查找的内容 * $replace 需要替换的内容 * $ ...
- Shell read交互
read语句:设定客户端交互的任意输出值. 参数: -a 后跟一个变量,该变量会被认为是个数组,然后给其赋值,默认是以空格为分割符. -d 后面跟一个标志符,其实只有其后的第一个字符有用,作为结束的标 ...
- kvm日常维护
1.列出物理机器上安装的虚拟[root@localhost ~]# virsh list --all Id Name State------------------------------------ ...
- Golang实现杨辉三角
杨辉三角,也算是一个经典的题目了.就简单的说说. 写代码之前,先分析要做的东西的特点,找到规律,再把这个规律描述一下. 然后把这个描述翻译成编程语言,就可以说是编程了. 那么杨辉三角有什么特点? 首先 ...
- ActiveReports 大数据分析报告:贸易争端与中国企业数字化转型
2018年11月12日至18日,亚太经合组织(APEC)领导人非正式会议首次在南太平洋最大岛国巴布亚新几内亚的首都莫尔兹比港举行,本次会议的主题是:“把握包容性机遇,拥抱数字化未来”. 面对全球不断变 ...
- 从实验室走向世界:HSP90抑制剂,一种新的癌症药物
热休克蛋白90(HSP90)是细胞内一种普遍存在的.十分保守的以及有高度活性的蛋白质,它在肿瘤细胞内的含量要比正常细胞多.作为一种分子伴侣,HSP90协助不同种类的癌蛋白(即HSP90的服务蛋白)进行 ...
- _reincarnation
可以设定转生等级和转生需求.来奖励转生 `level`转生等级 `reqId` 转生需求 `rewId` 转生奖励 `gossipText` 菜单显示
- _pet
可以控制各职业召唤物的属性.用于增强BB `comment` 备注 `classIndex` 职业序号 `DmgAddPct` 宠物伤害倍率 `SpAddPct` 法术伤害 `HpAddPct`血量倍 ...
- js parseInt
语法: parseInt(string, radix); string 要被解析的值.如果参数不是一个字符串,则将其转换为字符串(使用 ToString 抽象操作).字符串开头的空白符将会被忽略. ...
- get函数
dict={"name":"jary","age":22}print(dict.get("age")) # 通过键值找到 ...