oracle怎样使用logmnr恢复误删除的数据

如果有同事误删除数据了,可以用logmnr挖掘归档日志,生成回滚sql,快速恢复数据,比用整个库的备份恢复要快得多。

一 操作步骤

1.1 创建目录

su - oracle

mkdir logmnr

create directory logmnr_dir as '/home/oracle/logmnr';

1.2 建立数据字典分析文件

execute dbms_logmnr_d.build(dictionary_filename =>'dict.ora',dictionary_location =>'LOGMNR_DIR');

1.3 添加日志分析

exec dbms_logmnr.add_logfile(logfilename=>'/data/app/oracle/arch/1_772_1164727119.dbf',options=>dbms_logmnr.new);

exec dbms_logmnr.add_logfile(logfilename=>'/data/app/oracle/arch/1_773_1164727119.dbf');

#注意,只分析第一个日志文件的时候加,options=>dbms_logmnr.new,后面的文件不要加这个,否则会少数据。

1.4 启动LOGMNR开始分析

exec DBMS_LOGMNR.START_LOGMNR(OPTIONS=>DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG);

create table scott.t8 parallel(degree 8) as select * from v$logmnr_contents;

1.5 查看sql与回滚sql

select timestamp,table_name,operation,sql_redo,sql_undo from scott.t5 where table_name='T1';

示例:

1.6 跟开发沟通确认回滚sql没问题后,执行回滚sql

1.7 结束分析

execute dbms_logmnr.end_logmnr;

相关推荐
m0_561359679 分钟前
使用Python处理计算机图形学(PIL/Pillow)
jvm·数据库·python
山岚的运维笔记13 分钟前
SQL Server笔记 -- 第14章:CASE语句
数据库·笔记·sql·microsoft·sqlserver
Data_Journal19 分钟前
如何使用 Python 解析 JSON 数据
大数据·开发语言·前端·数据库·人工智能·php
ASS-ASH22 分钟前
AI时代之向量数据库概览
数据库·人工智能·python·llm·embedding·向量数据库·vlm
xixixi777771 小时前
互联网和数据分析中的核心指标 DAU (日活跃用户数)
大数据·网络·数据库·数据·dau·mau·留存率
范纹杉想快点毕业1 小时前
状态机设计与嵌入式系统开发完整指南从面向过程到面向对象,从理论到实践的全面解析
linux·服务器·数据库·c++·算法·mongodb·mfc
这周也會开心2 小时前
Redis与MySQL回写中的数据类型存储设计
数据库·redis·mysql
Aaron_Wjf2 小时前
PG Vector测试
数据库·postgresql
Aaron_Wjf2 小时前
PG逻辑复制槽应用
数据库·postgresql
一碗面4212 小时前
SQL性能优化:让数据库飞起来
数据库·sql·性能优化