oracle 审计日志清理
--进入审计日志目录:
cd $ORACLE_BASE/admin/$ORACLE_SID/adump
--删除3个月前的审计文件:
find ./ -type f -name "*.aud" -mtime +91|xargs rm -f
--一次清空所有审计文件
find ./ -type f -name "*.aud"|xargs rm-f
find ./ -mtime +7 -name "*.aud" -type f –delete
通常我们新装好一个数据库中查询审计开关的时候,可能会发现它的设置为DB。(预装设置,如果为其他表示被认为设置过)
SQL>show parameter audit_trail
Name TYPE VALUE
-----------------------------------
audit_trail string DB
audit_trail=DB,代表的是,oracle将把每次审计跟踪记录在数据库的一张叫做AUD$的表中。
SQL>select owner,table_name,tablespace_name from dba_tables a where a.table_name ='AUD$'
OWNER TABLE_NAME TABLESPACE_NAME
--------------------------------------------------------------
SYS AUD$ SYSTEM
而这张表所在的表空间,正式oracle数据库最重要的SYSTEM表空间。
由于这个表空间非常特殊:如果此时它正好被设置为自动扩展(AUT=YES)的话:
SQL>select a.tablespace_name,a.bytes,a.autoextensible from dba_data_files a where a.tablespace_name='SYSTEM' TABLESPACE_NAME BYTES AUT
--------------------------------------------------------
SYSTEM 2147473648 YES
长此以往,SYSTEM表空间最终会因为过度肥胖把磁盘撑爆。
(反过来,如果SYSTEM表空间的autoextensible=NO,AUD$表就没地方写就会报错无法分配空间)
SO,有点数据库就会根据情况,将审计功能“关闭”:
1.设置审计参数关闭
SQL>alter system set audit_trail=none scope=spfile;
2.重启数据库
SQL>shutdown immediate;
SQL>startup;
这时候小伙伴以为高枕无忧了,其实,oracle早有准备,有一个叫强制审计的变态功能在等着你。
只要你敢
- 用SYSDBA或者SYSOPER权限登录数据库
- 敢startup
- 敢shutdown
oracle就给你在$ORACLE_BASE/admin/$ORACLE_SID/adump 目录中记.aud的文件
所以,
开了DB功能,会同时将审计日志记在AUD$表中和操作系统aud文件中。
设置为NONE,仍然会而且毫无其他办法的将记录在操作系统aud文件中。
*数据库的表为:sys.aud$
*操作系统目录为:$ORACLE_BASE/admin/实例名/adump/
可通过SQL>show parameter audit 查询到)
是不是很变态?
所以这个目录长期不清理的话,会积压大量*.aud文件
长期大量不删除的话,会影响到操作系统inodes
所以,小伙伴们:
- 如果为DB,记得定期清空aud$表
SQL>truncate table sys.aud$;
- 如果你不想用DB功能,可以设置关闭
SQL>alter system set audit_trail=none scope=spfile;
注意,需要重启数据库
SQL>shutdown immediate;
SQL>startup;
- 如果为NONE,记得清空aud文件或者配置crontab定时任务定时清空aud文件。
注意:不要直接删除adump目录,否则,你会sqlplus不了数据库。
oracle 审计日志清理的更多相关文章
- oracle 审计功能
Oracle 11g推出了审计功能,但这个功能会针对很多操作都产生审计文件.aud,日积月累下来这些文件也很多,默认情况下,系统为了节省资源,减少I/0操作,其审计功能是关闭的 一.审计功能关闭 1. ...
- Oracle 审计文件
Oracle审计功能: Oracle11g推出了审计功能,但这个功能会针对很多操作都产生审计文件.aud,日积月累下来这些文件也很多,默认情况下,系统为了节省资源,减少I/0操作,其审计功能是关闭的 ...
- oracle审计表迁移
============ oracle审计表迁移到新的表空间 ============ 前言 oracle数据库开启审计功能后会占用大量的SYSTEM系统表空间,要么定时对审计表进行清理,要么对系统表 ...
- [转]ORACLE 审计功能
审计是对选定的用户动作的监控和记录,通常用于: u 审查可疑的活动.例如:数据被非授权用户所删除,此时安全管理员可决定对该 数据库的所有连接进行审计,以及对数据库的所有表的成功地或不 ...
- oracle审计例子
1.数据库开启审计alter system set audit_trail=db,extended scope=spfile;shutdown immediatestartup 2.对某个表进行审计c ...
- 初识oracle重做日志文件
转自 http://blog.csdn.net/indexman/article/details/7746948 以下易容翻译自oracle dba官方文档,不足之处还望指出. 管理重做日志文件 学习 ...
- ORACLE审计小结
ORACLE审计小结 1.什么是审计 审计(Audit)用于监视用户所执行的数据库操作,并且Oracle会将审计跟踪结果存放到OS文件(默认位置为$ORACLE_BASE/admin/$ORACLE_ ...
- KingbaseES 归档日志清理
WAL是Write Ahead Log的简写,和Oracle的redo日志类似,在R3版本存放在data/sys_log中,R6版本以后在data/sys_wal目录,在数据库访问过程中,任何对数据块 ...
- ABP(现代ASP.NET样板开发框架)系列之19、ABP应用层——审计日志
点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之19.ABP应用层——审计日志 ABP是“ASP.NET Boilerplate Project (ASP.NET ...
随机推荐
- API 接口规范
整体规范建议采用RESTful 方式来实施. 1. 协议 API与用户的通信协议,总是使用HTTPs协议,确保交互数据的传输安全. 2. 域名 应该尽量将API部署在专用域名之下. https://a ...
- 浅谈Swift和OC的区别
前言 转眼Swift3都出来快一年了,从OC到Swift也经历了很多,所以对两者的一些使用区别也总结了一点,暂且记录下,权当自己的一个笔记. 当然其中一些区别可能大家都有耳闻,所以这里也会结合自身的一 ...
- RabbitMQ系列教程之四:路由(Routing)
(使用Net客户端)在上一个教程中,我们构建了一个简单的日志系统,我们能够向许多消息接受者广播发送日志消息.在本教程中,我们将为其添加一项功能 ,这个功能是我们将只订阅消息的一个子集成为可能. 例如, ...
- 使用flask开发网站后端
Flask 是一个用于 Python 的微型网络开发框架,可以用于快速的搭建一个小型的网站. 我的搜索引擎:http://www.abelkhan.com 就是基于flask开发 一个flask的He ...
- [leetcode-506-Relative Ranks]
Given scores of N athletes, find their relative ranks and the people with the top three highest scor ...
- chart.js使用常见问题
Chart.js是一个简单.面向对象.为设计者和开发者准备的图表绘制工具库. 在使用过程中新手可能会遇到很多问题导致图标无法显示.下面我们来看一下在使用过程中可能会遇到的问题. 刚开始用chart.j ...
- Unity应用架构设计(13)——日志组件的实施
对于应用程序而言,日志是非常重要的功能,通过日志,我们可以跟踪应用程序的数据状态,记录Crash的日志可以帮助我们分析应用程序崩溃的原因,我们甚至可以通过日志来进行性能的监控.总之,日志的好处很多,特 ...
- encodeURI与decodeURI
Global对象的ecodeURI方法可以对URI进行编码,与其类似的还有一个方法encodeURIComponent方法. 相应的对URI的解码方法也有两个:decodeURI.decodeURIC ...
- 【PHP】最详细PHP从入门到精通(五)——PHP错误处理
PHP从入门到精通 之PHP中的字符串 在创建脚本和 web 应用程序时,错误处理是一个重要的部分.如果您的代码缺少错误检测编码,那么程序看上去很不专业,也为安全风险敞开了大门. 本教程介绍了 PH ...
- JavaScript一个函数式编程-------求标准差
利用JavaScript中的map函数和reduce函数实现函数式编程. 注意: 输出都在浏览器的控制台中. 代码如下: <script type="text/javascript&q ...