首页 > 数据库 >Oracle LogMiner 测试

Oracle LogMiner 测试

时间:2022-10-28 11:07:29浏览次数:40  
标签:dbms LogMiner execute logmnr logfile 测试 Oracle NULL redo


测试环境

docker

测试环境已安装好logminer,不用重复安装;

$ORACLE_HOME/rdbms/admin/dbmslm.sql
$ORACLE_HOME/rdbms/admin/dbmslmd.sql

LogMiner 必须要要开补充日志,否则没有DML语句,只能分析出DDL语句。

ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
ALTER PLUGGABLE DATABASE ADD SUPPLEMENTAL LOG DATA;
ALTER TABLE CUSTOMERS ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;

在CDB下

sqlplus / as sysdba

CREATE TABLE CUSTOMERS (
id NUMBER(9) GENERATED BY DEFAULT ON NULL AS IDENTITY (START WITH 1001) NOT NULL PRIMARY KEY,
first_name VARCHAR2(255) NOT NULL,
last_name VARCHAR2(255) NOT NULL,
email VARCHAR2(255) NOT NULL UNIQUE
);

insert into customers values(1,'1','1','1');

select member from v$logfile;
execute dbms_logmnr.add_logfile('/u04/app/oracle/redo/redo001.log',dbms_logmnr.new);
execute dbms_logmnr.add_logfile('/u04/app/oracle/redo/redo002.log',dbms_logmnr.addfile);
execute dbms_logmnr.add_logfile('/u04/app/oracle/redo/redo003.log',dbms_logmnr.addfile);
execute dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog+dbms_logmnr.committed_data_only);
select sql_redo,sql_undo from v$logmnr_contents where table_name like '%CUSTOMERS%' and OPERATION='INSERT';
execute dbms_logmnr.end_logmnr;

在PDB下

窗口1

sqlplus / as sysdba

alter session set container = ORCLPDB1;

CREATE TABLE CUSTOMERS (
id NUMBER(9) GENERATED BY DEFAULT ON NULL AS IDENTITY (START WITH 1001) NOT NULL PRIMARY KEY,
first_name VARCHAR2(255) NOT NULL,
last_name VARCHAR2(255) NOT NULL,
email VARCHAR2(255) NOT NULL UNIQUE
);

insert into customers values(2,'2','2','2');

窗口2

sqlplus / as sysdba

select member from v$logfile;
execute dbms_logmnr.add_logfile('/u04/app/oracle/redo/redo001.log',dbms_logmnr.new);
execute dbms_logmnr.add_logfile('/u04/app/oracle/redo/redo002.log',dbms_logmnr.addfile);
execute dbms_logmnr.add_logfile('/u04/app/oracle/redo/redo003.log',dbms_logmnr.addfile);
execute dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog+dbms_logmnr.committed_data_only);
select sql_redo,sql_undo from v$logmnr_contents where table_name like '%CUSTOMERS%' and OPERATION='INSERT';
execute dbms_logmnr.end_logmnr;


标签:dbms,LogMiner,execute,logmnr,logfile,测试,Oracle,NULL,redo
From: https://blog.51cto.com/xichenguan/5803806

相关文章

  • Oracle 创建dblink
    1、检查该用户是否拥有创建dblink权限select*fromuser_sys_privsawherea.privilegelikeupper('%DATABASELINK%');   2、用户没有dblink权限,则需要赋权......
  • 自动化测试框架遇到的错误-python的xlrd读取Excel数据失败: raise XLRDError(FILE_FORM
    python的xlrd读取Excel数据失败:raiseXLRDError(FILE_FORMAT_DESCRIPTIONS[file_format]+’;notsupported’)xlrd.biffh.XLRDError:Excelxlsxfile;notsupported......
  • 测试架构需要具备哪些能力
    这篇文章是软件工程系列知识总结的第五篇,同样我会以自己的理解来阐述软件工程中关于架构设计相关的知识。相比于我们常见的研发架构师,测试架构师是近几年才出现的一个岗......
  • pc端项目-调接口时切换正式环境和测试环境
    1,在实际开发中和后端调接口的时候会碰到用测试环境还是正式环境,这个是要自己配置的,一般项目根目录里面都有两个文件,一个是.env.development,另一个是.env.production#开......
  • AIR32F103(四) 27倍频216MHz,CoreMark跑分测试
    目录AIR32F103(一)合宙AIR32F103CBT6开发板上手报告AIR32F103(二)Linux环境和LibOpenCM3项目模板AIR32F103(三)Linux环境基于标准外设库的项目模板AIR32F103(四)2......
  • 《渗透测试》学习随笔 day2
    数据包拓展1.HTTP/HTTPS(1)HTTP与HTTPS协议HTTPS协议需要到CA申请证书,一般免费证书很少,需要交费。HTTP协议运行在TCP之上,所有传输的内容都是明文,HTTPS运行在SSL/TLS之......
  • 转帖-我对测试工作的一些认识
    从大专毕业后,慢慢过去了三年,不知道自己要干什么,要到哪里去,没有目标的活着。但是现在也在慢慢填充眼界和开阔自己的视野,看看更多人的方法,学习思路,以及对待人生的见解。争取......
  • 单元测试
    1.pom.xml<!--单元测试--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId>......
  • 软件测试这些误区你有过吗?快收藏避雷了!
    1.软件测试门槛低、技能要求不高在知乎等社交平台,很多人经常询问:零基础转行软件测试是否存在高薪的可能性,在相关培训机构所编织的美丽泡沫中,他们极容易做培训三四......
  • Oracle 启动报错:ORA-03113
    解决办法:登录sqlplus/nologSQL>conn/assysdba关闭数据库SQL>shutdownabort或shutdownimmediate装载数据库SQL>startupmount查看oracle运行日志路径SQL>showparame......