首页 > 数据库 >Oracle 闪回技术

Oracle 闪回技术

时间:2023-12-27 16:12:54浏览次数:30  
标签:闪回 VERSIONS 技术 查询 版本 Oracle table 数据

闪回技术概述

Oracle数据库闪回技术是一组独特而丰富的数据恢复解决方案,通过有选择地,有效的消除错误影响,可逆转人为错误。
- 查看数据地过去状态
- 可沿时间轴向前或向后闪回
- 协助用户进行错误分析和恢复
- 简单的命令行操作(或者DBMS_FLASHBACK包)
- 闪回时间与数据库大小无关
闪回支持不同级别地操作,包括行、事务、表和整个数据库:
- Flashback Database
- Flashback Table
- Flashback Drop
- Flashback Transaction
- Flashback Transaction Query
- Flashback Query
- Flashback Version Query

基于UNDO数据的闪回技术

- 闪回查询:查询一张表再过去时间的数据状态
- 闪回表:把一张表闪回到过去的时间点
- 闪回版本查询:一段时间多个事务操作对应表中数据状态
- 闪回事务查询:查询事务对应的UNDO Sql;闪回数据归档
### 闪回查询技术
查询一张表在过去某指定时间的数据状态
- 基于UNDO数据,确认是否可以查询对象或将对象改回到过去的某个时间点。
- 设置undo_management = auto
- 设置undo \_tablespace参数
- 设置undo_retntion(秒为单位)
- 执行闪回查询
1.闪回到某精确时间点:
select * from sh.test_tab1 as of timestamp
to_timestamp('2020-12-21 08:45:00','yyyy-mm-dd hh24:mi:ss')
2.闪回到多久时间之前(例如:1分钟前)
select * from tab as of timestamp sysdate - 1/24/60;

3.闪回到指定SCN
select * from tabl2 as of scn 5572156;

闪回版本查询技术

- 闪回查询:查询某一时间点的数据
- 闪回版本查询:
- 使用VERSIONS子句查询某一段时间对应行的所有版本
- 返回结果是行的改变历史,且只返回已提交的行(包括删除和重新插入的行版本)
- 提供了一种审计表行的方式,并可获取改变行的事务信息。
- 可以使用返回的事务标识符,通过LogMiner执行日志挖掘,或者进行闪回事务查询
SELECT versions_startscn,versions_starttime,
versions_endscn,versions_endtime,
versions_xid,versions_operation,
last_name,salary
FROM employees
VERSIONS BETWEEN TIMESTAMP
to_timestamp('2020-12-21 08:45:00','yyyy-mm-dd hh24:mi:ss')
AND to_timestamp('2020-12-21 08:50:00','yyyy-mm-dd hh24:mi:ss')
WHERE first_name = 'John';

利用数据版本标记列追溯数据历史变化过程:

VERSIONS_STARTSCN:数据版本被创建时的SCN
VERSIONS_STARTTIME:数据版本被创建时的时间戳
VERSIONS_ENDSCN:数据版本消逝时的SCN
VERSIONS_ENDTIME:数据版本消逝时的时间戳
VERSIONS_XID:数据版本被创建时的事务号
VERSIONS_OPERATION:数据版本创建时的事务类型
另外,可以关联FLASNBACK_TRANSACTION_QUERY,了解更多的闪回查询相关信息,例如UNDO_SQL可以给出数据修复需要执行的SQL。

闪回表技术

闪回表技术可以将表恢复到过去的指定时间点。
- 限制:只能将表闪回到undo所允许的过去时间点
- 需要开启行迁移(row movement)
开启行移动:
alter table table_name enable row movement;
将表闪回到指定地点:
flashback table table_name to timestamp ('2020-12-21 08:45:00','yyyy-mm-dd hh24:mi:ss');
将表闪回到n分钟(小时)之前:
flashback table table_name to timestamp sysdate - n/24/60;
将表闪回到指定的SCN:
flashback table table_name to scn xxxxxx;

FDA闪回数据归档技术

闪回数据归档:
- UNDO的保留期限限制
- 实现闪回查询和闪回表在时间上的延续
闪回数据归档步骤:
* 创建一个供闪回数据库使用的表空间
* 在该表空间创建闪回数据归档,时间期限自定义
* 创建一个用户并授予DBA的角色
* 授予用户操作的必要权限
* 登录创建一个表启用闪回数据归档
* 执行查询来确定归档创建的对象
CREATE FLASHBACK ARCHIVE DEFAULT fla1 TABLESPACE tbs1
QUOTA 10G RETENTION 1 YEAR;
CREATE FLASHBACK ARCHIVE fla2 TABLESPACE tbs2 RETENTION 2 YEAR;

基于Recyclebin的闪回删除技术

闪回删除技术:
- 针对非system表空间
- 适用于通过drop操作和非purge的方式删除的对象
- 可以在recyclebing使用闪回删除操作还原删除的对象(包括相关索引,约束,触发器)
回收站(recycle bin)
- 通过数据字典视图快速查看:USER_RECYCLEBIN和DBA_RECYCLEBIN。
- 删除的表在回收站中被重新命名

基于闪回数据库日志的闪回数据库技术

- 闪回数据库:把数据库闪回到过去的时间点,针对逻辑故障,或者对相同数据做循环迭代测试

闪回使用场景

 

标签:闪回,VERSIONS,技术,查询,版本,Oracle,table,数据
From: https://www.cnblogs.com/guapixiong/p/17930767.html

相关文章

  • 即时通讯技术文集(第29期):IM开发技术合集(Part2) [共18篇]
    为了更好地分类阅读52im.net总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第29 期。[- 1 -] 谈谈移动端IM开发中登录请求的优化[链接] http://www.52im.net/thread-282-1-1.html[摘要] 到底是“登陆”还是“登录”?这是很多处女坐开发者纠结的问题,不......
  • oracle数据泵导入导出dmp文件
    创建表空间TCMP--创建表空间TCMP('D:\database\TCMP.dbf'--使用指定文件保存)(size4096m--初始大小)(autoextendonnext100m--没有空间的时候文件默认增长大小)(maxsize10240m--文件的最大值,如果达到最大值,会提示扩展失败。需给表空间增加文件保存)createtablespaceTCMP......
  • 自然语言处理的技术路线:如何实现高效的文本分析
    1.背景介绍自然语言处理(NLP)是计算机科学与人工智能的一个分支,研究如何让计算机理解、生成和处理人类语言。自然语言处理的技术路线是一种高效的文本分析方法,它可以帮助我们解决许多实际问题,例如文本摘要、情感分析、文本分类、机器翻译等。在本文中,我们将探讨自然语言处理的核心概......
  • 字节跳动的自然语言处理技术
    1.背景介绍自然语言处理(NLP,NaturalLanguageProcessing)是计算机科学与人工智能的一个分支,研究如何让计算机理解、生成和处理人类语言。自然语言处理技术广泛应用于各个领域,包括机器翻译、语音识别、情感分析、文本摘要等。字节跳动是一家全球性的科技公司,拥有多个业务线,包括社交媒......
  • 智能摄像头技术的发展趋势
    1.背景介绍智能摄像头技术的发展趋势是一个非常热门的话题,它在各种领域都有广泛的应用,例如人脸识别、物体检测、自动驾驶等。在这篇文章中,我们将深入探讨智能摄像头技术的核心概念、算法原理、具体操作步骤、数学模型公式、代码实例以及未来发展趋势与挑战。1.背景介绍智能摄像头技......
  • 智能能源技术在金融中的应用
    1.背景介绍智能能源技术已经成为金融行业的一个重要趋势。随着能源价格波动的不断加剧,金融机构需要更加智能化、高效化地管理能源资源。智能能源技术可以帮助金融机构更好地预测能源需求,降低能源成本,提高能源资源的利用效率。在金融行业中,智能能源技术的应用主要包括以下几个方面:能......
  • Oracle 11g RAC(openfiler +multipath +udev +补丁升级)
    配套视频:《Oracle11gRAC安装》 或《Oracle11gRAC安装》配套文档:《一步一步在linux上部署Oracle11gR2RAC》......
  • java浅拷贝BeanUtils.copyProperties引发的RPC异常 | 京东物流技术团队
    背景近期参与了一个攻坚项目,前期因为其他流程原因,测试时间已经耽搁了好几天了,本以为已经解决了卡点,后续流程应该顺顺利利的,没想到人在地铁上,bug从咚咚来~没有任何修改的服务接口,抛出异常:java.lang.ClassCastException:java.util.HashMapcannotbecasttocn.xxx.xxx.xxx.xxx.Ba......
  • 统信软件多款产品与KeyarchOS完成浪潮信息澎湃技术认证
    日前,统信畅写文档协作管理系统和畅写在线各版本软件与云峦操作系统KeyarchOSV5完成浪潮信息澎湃技术认证。经测试,双方产品整体运行稳定,在功能、性能及兼容性方面表现良好,满足客户的核心需求。浪潮信息澎湃技术认证是基于多元、创新的通用计算平台,与供应链及软件服务等生态合作伙伴......
  • 浪潮信息集中式存储与仪电云i-stack云操作系统软件完成澎湃技术认证
    近日,仪电云i-stack云操作系统软件与浪潮信息集中式存储AS/HF系列产品完成并通过浪潮信息澎湃技术相互兼容性测试认证,测试结果显示,仪电云i-stack云操作系统软件与浪潮信息集中式存储AS/HF系列产品完全兼容,满足功能需求,系统运行可靠稳定,性能表现优异。浪潮信息澎湃技术认证是浪潮信息......