DML误操作基于时间点的不完全恢复

2023-10-08 22:32

本文主要是介绍DML误操作基于时间点的不完全恢复,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

不完全恢复(必须归档)的步骤:
1、先做全备份(最好是关库备份)。
2、通过logmnr找到误操作的时间点
3、转储所有数据文件。其他不用。
4、startup mount;
5、把数据文件恢复到错误发生的时间点。
6.开库resetlogs;
7.再全备份一次。
utl
1、首先创建一个ult目录。
[oracle@rtest oracle]$ mkdir utl
[oracle@rtest oracle]$ cd utl/
[oracle@rtest utl]$ pwd
/u01/app/oracle/utl
然后修改:
sys@TEST0910> show parameter utl
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
create_stored_outlines               string
utl_file_dir                         string
sys@TEST0910> alter system set utl_file_dir='/u01/app/oracle/utl';
alter system set utl_file_dir='/u01/app/oracle/utl'
                 *
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
2、使路径生效,shutdown immediate后startup
sys@TEST0910> alter system set utl_file_dir='/u01/app/oracle/utl' scope=spfile;
System altered.
sys@TEST0910> show parameter utl
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
create_stored_outlines               string
utl_file_dir                         string
sys@TEST0910> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
sys@TEST0910> startup
ORACLE instance started.
Total System Global Area 2505338880 bytes
Fixed Size                  2230952 bytes
Variable Size             587203928 bytes
Database Buffers         1895825408 bytes
Redo Buffers               20078592 bytes
Database mounted.
Database opened.
sys@TEST0910> show parameter utl
NAME                                             TYPE        VALUE
------------------------------------ ----------- ------------------------------
create_stored_outlines                   string
utl_file_dir                                       string      /u01/app/oracle/utl
3、破坏试验之前,备份
冷备份:sys@TEST0910> @/u01/app/oracle/bak/cold_bak
热备份:sys@TEST0910>  @/u01/app/oracle/bak/hot_bak
破坏性试验:dml语句的不完全恢复
注意utl参数
过程:删数据--查日志--logmnr--关库--转储--mount--不完全恢复--开库resetlogs
4、log miner主要目的是找出dml或ddl操作的时间和位置:
alter database add supplemental log data这样才找得到。 一定要激活。
log miner要用sys用户执行:
在使用log miner之前,先添加辅助日志:
sys@TEST0910> select count(*) from scott.test8;
  COUNT(*)
----------
        14
sys@TEST0910> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;即激活logmnr
Database altered.
5、误操作不带条件的删除
sys@TEST0910> delete from scott.test8;
14 rows deleted.
sys@TEST0910> commit;
Commit complete.
sys@TEST0910> select count(*) from scott.test8;
  COUNT(*)
----------
         0

这篇关于DML误操作基于时间点的不完全恢复的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/168435

相关文章

go中的时间处理过程

《go中的时间处理过程》:本文主要介绍go中的时间处理过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 获取当前时间2 获取当前时间戳3 获取当前时间的字符串格式4 相互转化4.1 时间戳转时间字符串 (int64 > string)4.2 时间字符串转时间

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

利用Python实现时间序列动量策略

《利用Python实现时间序列动量策略》时间序列动量策略作为量化交易领域中最为持久且被深入研究的策略类型之一,其核心理念相对简明:对于显示上升趋势的资产建立多头头寸,对于呈现下降趋势的资产建立空头头寸... 目录引言传统策略面临的风险管理挑战波动率调整机制:实现风险标准化策略实施的技术细节波动率调整的战略价

Python日期和时间完全指南与实战

《Python日期和时间完全指南与实战》在软件开发领域,‌日期时间处理‌是贯穿系统设计全生命周期的重要基础能力,本文将深入解析Python日期时间的‌七大核心模块‌,通过‌企业级代码案例‌揭示最佳实践... 目录一、背景与核心价值二、核心模块详解与实战2.1 datetime模块四剑客2.2 时区处理黄金法

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增

Pandas进行周期与时间戳转换的方法

《Pandas进行周期与时间戳转换的方法》本教程将深入讲解如何在pandas中使用to_period()和to_timestamp()方法,完成时间戳与周期之间的转换,并结合实际应用场景展示这些方法的... 目录to_period() 时间戳转周期基本操作应用示例to_timestamp() 周期转时间戳基

JavaScript时间戳与时间的转化常用方法

《JavaScript时间戳与时间的转化常用方法》在JavaScript中,时间戳(Timestamp)通常指Unix时间戳,即从1970年1月1日00:00:00UTC到某个时间点经过的毫秒数,下面... 目录1. 获取当前时间戳2. 时间戳 → 时间对象3. 时间戳php → 格式化字符串4. 时间字符

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及