当前位置: 首页 > news >正文

Oracle 日志挖掘

oracle 11g 日志挖掘测试

需要开启补充日志

alter database add supplemental log data;
SELECT SUPPLEMENTAL_LOG_DATA_MIN, SUPPLEMENTAL_LOG_DATA_PK, SUPPLEMENTAL_LOG_DATA_UI
FROM V$DATABASE;

在用户下执行一些删除,插入等操作

SQL> create table zxy( a int);Table created.
SQL> insert into zxy values (2);1 row created.SQL> insert into zxy values (3);1 row created.
SQL>  delete from zxy where a=2;1 row deleted.SQL> commit;Commit complete.

手动切换下日志

SQL> alter system switch logfile;System altered.找到该段时间的归档文件
-rw-r----- 1 oracle oinstall   3823104 Jun  7 16:07 1_430_1119886393.dbf

日志挖掘

1. 增加需要分析的归档日志,可以一直增加:
exec sys.dbms_logmnr.add_logfile(LogFileName=>'/u01/app/oracle/fast_recovery_area/DBOGG/archivelog/1_430_1119886393.dbf',options => dbms_logmnr.new);增加多个日志
exec sys.dbms_logmnr.add_logfile(LogFileName=>'/u01/app/oracle/fast_recovery_area/DBOGG/archivelog/1_429_1119886393.dbf',options => dbms_logmnr.addfile);2. 查看是否增加成功
SQL> select filename from v$logmnr_logs;FILENAME
--------------------------------------------------------------------------------
/u01/app/oracle/fast_recovery_area/DBOGG/archivelog/1_430_1119886393.dbf3. 开始日志挖掘:
exec sys.dbms_logmnr.start_logmnr( options => sys.dbms_logmnr.dict_from_online_catalog);4. 把挖掘到的内容,按需求过滤,存到一张临时表:
create table tmp_logmnr as select * from v$logmnr_contents where seg_name='ZXY';5. 关闭日志挖掘:
exec sys.dbms_logmnr.end_logmnr;6. 查看挖掘到的信息:
select TIMESTAMP,OPERATION,USERNAME,SQL_REDO,MACHINE_NAME from tmp_logmnr where TABLE_NAME='ZXY';
TIMESTAMP		OPERATION			 USERNAME			SQL_REDO		       MACHINE_NAME
----------------------- -------------------------------- ------------------------------ ------------------------------ --------------------
07-JUN-2024 16:04:25	DDL				 TEST				create table zxy( a int);      zhang3
07-JUN-2024 16:05:14	INSERT				 TEST				insert into "TEST"."ZXY"("A")  zhang3values ('2');07-JUN-2024 16:05:24	INSERT				 TEST				insert into "TEST"."ZXY"("A")  zhang3values ('3');07-JUN-2024 16:06:29	DELETE				 TEST				delete from "TEST"."ZXY" where zhang3"A" = '2' and ROWID = 'AAAV8HAAHAAAFVbAAA';select * from tmp_logmnr where;查询是否存在LOGMNR使用的session
SELECT COUNT(*) from v$LOGMNR_SESSION;
http://www.lryc.cn/news/368779.html

相关文章:

  • 翻转二叉树-力扣
  • 办公风云颜值背后的职场正能量
  • ffmpeg将一个视频中的音频合并到另一个视频
  • Web前端管理系统项目:深度解析与实现之道
  • C语言最终讲:预处理详解
  • Mysql的底层实现逻辑
  • Node安装配置
  • Django里的ModelForm组件
  • 深入理解C语言:main函数的奥秘
  • selenium自动化测试入门 —— Alert/Confirm/Prompt 弹出窗口处理!
  • 探索JavaScript 18:新特性全解析
  • Python第二语言(七、Python模块)
  • 介绍单例模式
  • 【C++修行之道】类和对象(五)日期类的实现、const成员、取地址及const和取地址操作符重载
  • 来腾讯第4天,我已经焦虑昏了啊!
  • MacOS升级ruby版本
  • 【MySQL数据库基础】
  • QT系列教程(9) 主窗口学习
  • 【C++进阶】深入STL之 栈与队列:数据结构探索之旅
  • SpringBoot发邮件服务如何配置?怎么使用?
  • AutoCAD Mechanical机械版专业的计算机辅助设计软件安装包下载安装!
  • json.load报错AttributeError: ‘str‘ object has no attribute ‘load‘
  • 单词记忆(第二周)
  • RAG:如何从0到1搭建一个RAG应用
  • leetcode:67二进制求和
  • 大模型日报2024-06-10
  • 【博士每天一篇文献-综述】Modularity in Deep Learning A Survey
  • Sentinel不使用控制台基于注解限流,热点参数限流
  • HTML做成一个端午节炫酷页面
  • 解决Ubuntu系统/usr/lib/xorg/Xorg占用显卡内存问题原创