表闪回操作及解决闪回表时出现的ORA-08189故障

Oracle闪回详解(闪回查询,闪回数据,回退数据,闪回表,闪回数据库,闪回快照,闪回主备库(恢复关系),闪回归档,注意事项,有关闪回常用查询命令) 即在备库进行,开启此模式时为了在备库进行一些测试操作,而又不行留存在数据库中,当备库切换回physical standby物理备库时,之前在snapshot standby模式进行的测试将会被丢弃。如果一块数据磁盘空间无法保存某个数据时(比如以前是1k,现在update到2k,而当前块的空闲空间不足1k),则会将新的数据保存到另外一个新的块里,然后在以前的块保存一个新位置的地址连接。允许用户查询过去某个时间点的数据,用以重构由于意外删除或更改的数据,数据不会变化。如果已经做了上述操作,从库可以选择重建。 阅读详情

时间点:time1

SQL> select dbms_flashback.get_system_change_number from dual;

GET_SYSTEM_CHANGE_NUMBER
------------------------
               152713033
SQL> select count(*) from testvarchar;
COUNT(*)
----------
10000000

操作如下:
SQL> delete testvarchar;   
10000000 rows deleted.
SQL> commit;
Commit complete.
SQL> select count(*) from testvarchar;
COUNT(*)
----------
         0

时间点:time2
SQL> select dbms_flashback.get_system_change_number from dual;
GET_SYSTEM_CHANGE_NUMBER
------------------------
               152883734

用Flashback功能查询以前的数据

SQL> select count(*) from testvarchar as of scn 152713033;

COUNT(*)
----------
10000000
SQL>
用flashback直接恢复表
SQL> flashback table testvarchar to scn 152713033;
flashback table testvarchar to scn 152713033
                *
ERROR at line 1:
ORA-08189: cannot flashback the table because row movement is not enabled
--或使用时间点闪回:
--FLASHBACK TABLE LICZ.SALES TO TIMESTAMP to_timestamp('2009-04-30 13:26:49', 'YYYY-MM-DD HH24:MI:SS');

SQL> alter table testvarchar enable row movement;

Table altered.

这个命令的作用是,允许Oracle 修改分配给行的rowid。在Oracle 中,插入一行时就会为它分配一个rowid,而且这一行永远拥有这个rowid。闪回表处理会对EMP 完成DELETE,并且重新插入行,这样就会为这些行分配一个新的rowid。要支持闪回就必须允许Oracle 执行这个操作

SQL> flashback table testvarchar to scn 152713033;
Flashback complete.
SQL> select count(*) from testvarchar;
COUNT(*)
----------
10000000
SQL>

注意:你在create表后,等5分钟后再进行相应的scn查询,del操作,因为9i只支持dml的flashback,create等的ddl不支持,你闪回到的scn有可能dml和ddl在5分钟内,否则会导致出现ora-01466错误。

在10g中支持ddl操作闪回,如不小心删除了一个表,可用下面操作闪回,
但注意oracle( Release 10.2.0.1.0)回收站不支持系统表空间,如果删除的这个在系统表空间,这个表是不能闪回的

1 查看回收站
SQL> SELECT original_name, object_name, TYPE, droptime FROM user_recyclebin;
ORIGINAL_NAME     OBJECT_NAME       TYPE                                   DROPTIME
-------------    ---------------------------          ------------                              -------------------
DEMO              BIN$cI/hTpOYT4GOLWfF+7O78Q==$0   TABLE        2009-05-14:15:09:40

2 恢复
SQL> FLASHBACK TABLE demo TO BEFORE DROP;

最后需要注意的问题:

对表数据更新一段时间后,只有在初始化参数UNDO_RETENTION设置的时间内才可以查询到表flashback_transaction_query的数据更改记录。而且,只有初始化参数UNDO_MANAGEMENT设置为AUTO后才能使用闪回查询。

麒麟OS(Kylin OS)操作系统minikube+docker安装使用及遇到的问题 一 ,安装minikube及操作工具kubectl 1,安装kubectl 使用以下命令下载最新版本: curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" 要下载指定版本(例如v1.22.0版本) ,请键入: curl -LO https://dl.k8s.io/release/v1.22.0/bin/linux/amd.. 阅读详情

相关推荐

别只盯着Spectre!Cadence Virtuoso里APS和Spectre X该怎么选?一份给模拟IC新手的指南

本文深入解析Cadence Virtuoso中的三大仿真引擎Spectre、APS和Spectre X,帮助模拟IC新手根据电路规模、精度需求和计算资源做出智能选择。通过对比技术指标和应用场景,提供射频电路、混合信号系统和电源管理IC的优化仿真策略,显著提升设计效率。

weixin_26841743的博客 704

ORA-08189: 因为未启用行移动功能, 不能闪回表解决

执行数据库回退功能 Flashback table 表名 to timestamp to_timestamp ('2014-0315 09:30:00','yyyy-mm-dd hh24:mi:ss'); 提示ORA-08189: 因为未启用行移动功能, 不能闪回表 。一般来说出现这种错误,就是数据库表不支持闪回功能,修复很简单,开启即可。 所以执行以下语句 再执行闪回 alter table 表名enable row movement; ...

过客璇璇的博客 4790

UG NX与PLC-1500的在环虚拟测试

TIA、PLCSIM、NetToPLCsim、KEPServerEX以及UG NX的在环虚拟测试

lvtlvtlvtlvt的博客 4219

ORA-08189: 因为未启用行移动功能, 不能闪回表问题

因为每次操作发生时,Oracle需要找到并移动受影响的行,以保证行在表中的真实位置与存储中的位置一致。行移动是Oracle中的一个特性,它允许表中的行在物理位置上被移动,这对于某些操作(如闪回表)是必要的。但请注意,禁用行移动可能会影响某些操作(如未来的闪回表操作)。在某些情况下,闪回操作可能会失败或导致不一致的数据状态。* 在启用或禁用行移动时,确保没有其他用户或进程正在对该表进行写操作,因为这可能会导致不一致或错误。但通常,在大多数生产环境中,建议保持行移动功能启用,以便在需要时能够执行闪回操作。

weixin_42821740的博客 1644

从问卷到结论:手把手教你用SPSS 28完成一份完整的社科数据分析报告

本文详细介绍了如何使用SPSS 28完成社会科学研究中的数据分析报告,从问卷数据导入、清洗到描述性和推断性统计分析,再到结果呈现与报告撰写。通过实际案例演示,帮助研究者掌握SPSS 28的核心功能,提升数据分析效率与报告质量。

weixin_28717431的博客 249

从报错到优化:一次Gauss JDBC参数限制排查实录(32767参数上限避坑指南)

本文详细记录了排查GaussDB JDBC驱动因绑定参数数量超过32767上限而抛出`PSQLException`(报错信息为`Tried to send an out-of-range integer as a 2-byte value`)的全过程。文章深入分析了该限制的底层协议原理,并提供了应用层分批查询、使用临时表以及优化业务逻辑等多种解决方案,旨在帮助开发者规避此参数上限陷阱,构建更稳健的数据访问层。

rgv23456789的博客 218

ORA-08189

OS: [root@yoon ~]# more /etc/oracle-release Oracle Linux Server release 5.7   DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production PL/SQL Release 11.2.0.3.0 - Production CO

__Yoon 843

Unity游戏接入穿山甲广告SDK全攻略:从零到上线的避坑指南

本文为Unity开发者提供了接入穿山甲广告SDK的完整实战指南。详细解析了从账号注册、应用创建到Unity插件集成、安卓与iOS平台打包配置的全流程,并重点分享了广告加载失败、展示异常等常见问题的排查与解决方案,帮助开发者高效实现游戏广告变现。

weixin_29015899的博客 535

Oracle数据库闪回表

提示ORA-08189: 因为未启用行移动功能, 不能闪回表。一般来说出现这种错误,就是数据库表不支持闪回功能,修复很简单,开启即可。ORA-08189: 因为未启用行移动功能, 不能闪回表解决。所以执行以下语句 再执行闪回。

qq_36414608的博客 673

VFIO框架源码分析(二十一)- IOMMUFD 模式下的 DMA 映射机制

在虚拟化 I/O 的世界里,无论上层管理面(如对象模型、设备绑定)如何重构,数据面最核心的任务始终未变——DMA 映射(DMA Mapping)。即如何建立 Guest Physical Address (GPA) 到 Host Physical Address (HPA) 的映射关系,并将其填入 IOMMU 的硬件页表中,使得直通设备能够正确访问虚拟机内存。在 Legacy VFIO (Type1) 时代,这一职责由承担,它通过ioctl 操作 Container。

qq_36071928的博客 1007

PON架构(全光网络)

目前组网架构世界上有一种最快的速度又是光,以前传统以太网络规划满足不了现在的需求。有线网 无线网 全光网络方案场景 全光网络分类 以太全光网络 PON(Pas-sive-Optical Network 无源光网络) 再典型的中大型高校网络中 推荐万兆入室 千兆到桌面的带宽设计 一般三层 (终端-接入层-汇聚层-核心层-出口(安全设备)-互联网) 单校区核心设备 一般采用两台高性能的核心交换机 双机的方式采用的是 M-LAG 多校区之间核心交换机采用1

qq_56248592的博客 6269

闪回命令出错 ORA-08189: cannot flashback the table because row movement is not enabled

<br />test@ORCL>flashback table t to scn:scn<br />  2  ;<br />flashback table t to scn:scn<br />                *<br />ERROR at line 1:<br />ORA-08189: cannot flashback the table because row movement is not enabled<br /> <br />使用闪回命令出错<br /> <br /> <br /> 

guhui2509的专栏 7638

【深度学习新浪潮】深度学习特别是大模型在图像配准方面的研发进展

深度学习,尤其是大模型的出现,彻底改变了图像配准的技术范式——从“手工设计特征+几何约束”走向“数据驱动+通用特征学习”。当前,大模型配准已在医学影像、遥感、工业检测等领域实现商业化落地,解决了传统方法难以应对的跨模态、少样本、复杂形变等问题。但大模型配准仍面临推理效率、可解释性、数据隐私等挑战,未来的研发核心将是“精度与效率的平衡”“泛化能力的提升”“场景化适配的简化”。对于开发者而言,从简化版大模型配准代码入手,逐步理解预训练+微调的核心逻辑,是衔接前沿技术的有效路径。

专注:太空算力、AI infra、异构调度、大模型成本工程 424

解决闪回表时出现的ORA-08189故障

时间点:time1 SQL> select dbms_flashback.get_system_change_number from dual;GET_SYSTEM_CHANGE_NUMBER------------------------               152713033SQL>  select count(*) from testvarchar;  COUNT(*)-

qqwwwgg1983的专栏 1044

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

ORA-08189: 故障

时间点:time1SQL&gt; select dbms_flashback.get_system_change_number from dual; GET_SYSTEM_CHANGE_NUMBER------------------------               152713033   SQL&gt;  select count(*) from testvarchar; ...

lb517290079的专栏 170

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Oracle 表闪回(Flashback Table)

Oracle 表闪回是一个非常实用的功能,尤其适用于处理因误操作导致的数据丢失。它通过利用 UNDO 信息和闪回日志,能够快速、在线地恢复表数据。然而,使用时需注意其限制条件,如表空间限制、权限要求以及是否启用了行移动等。合理配置和参数,有助于确保闪回操作的顺利进行。

chinalog的专栏 514

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Oracle表闪回:一条SQL搞定单表数据误操作恢复

数据库运维中,数据误操作是常见的高危事故,传统恢复手段往往依赖备份和归档,耗时且影响面大。Oracle提供的闪回技术栈中,Flashback Table(表闪回)是一种轻量级的单表恢复方案,它基于UNDO和SCN机制,通过反向DML将表数据回滚到历史时间点,无需整库恢复,在满足条件时一条SQL即可完成。该技术尤其适合开发人员写错UPDATE/DELETE条件、批量数据被错误覆盖等场景,能够在秒级到分钟级内恢复目标表,大幅缩短故障停机时间。文章从闪回家族体系入手,对比RMAN与数据泵的适用边界,详解底层原理、

weixin_32932149的博客 333

【救命稻草】Oracle的闪回操作

Oracle数据库作为企业级数据库系统之一,在数据安全和故障恢复方面都拥有优异的表现。其中,闪回技术作为一项备受追捧的恢复能力,能够在不停止数据库的情况下,撤销数据库中的误操作,并快速回滚到先前的状态。例如使用insert、update、delete等语句对数据表进行错误操作,需要将数据表回滚到操作前。在生产数据库操作数据时,最好进行备份、事务等操作,不要过度依赖于闪回。本文主要介绍使用Oracle闪回对数据表进行回滚。

青栀的博客 391

闪回技术二:闪回表

1.测试表 SQL> select * from t; X NAME ---------- ---------- 1 a 2 b 3 b ...

cjllyl654321的博客 112

Oracle 数据库运维实战:6 个高频坑与救命命令

本文梳理 Oracle 数据库运维中 6 个高频故障场景与实用命令。建表空间开启自动扩展时务必配置 MAXSIZE 上限,避免磁盘被占满;日期查询需用 TO_DATE 显式转换,规避 NLS 环境引发 ORA‑01861 报错。利用闪回功能可恢复误删表与数据,闪回表前要开启行移动。锁故障排查以 block=1 定位阻塞会话,杀会话需提供 sid 和 serial#。RMAN 时间点恢复要求数据库处于归档模式,日期也要显式转换。文末附带故障速查表,掌握要点可应对大部分突发运维问题。

hdhdhdk的博客 206

oracle10gdpm导入到11g,ORACLE 10g 生产表数据丢失处理实战

故障处理一、故障现象三张参数表数据丢失,一张一个字段变NULL二、应急处理1、DG备库关闭并且启动到只读模式2、从DG库EXP相关表并且IMP到生产库(先EXP备份生产库相关表后DRPP掉相关表)3、确认数据已经恢复,处理过程5分钟三、思考其他处理方法:1、10G的flashback功能SQL> flashback table t to timestamp to_timestamp('201...

weixin_35660371的博客 311

ORACLE 10g 生产表数据丢失处理实战

故障处理 一、故障现象 三张参数表数据丢失,一张一个字段变NULL   二、应急处理 1、 DG备库关闭并且启动到只读模式 2、 从DG库EXP相关表并且IMP到生产库(先EXP备份生产库相关表后DRPP掉相关表) 3、 确认数据已经恢复,处理过程5分钟   三、思考 其他处理方法: 1、10G的flashback功能 SQL&gt; flashback table t t...

weixin_33862514的博客 151

ORA-08189: cannot flashback the table because row movement is not enabled.

注意:表闪回可在直接在open状态下操作 scn查找某一点的SCN:select timestamp_to_scn(to_timestamp('2012-12-30 10:36:14:477501','yyyy-mm-dd hh24:mi:ss:ff')) from dual; 获取当前的SCN:select systimestamp,timestamp_to_scn(sysdate) fro...

weixin_30871905的博客 1127

Oracle笔记

今天测试闪回的时候,遇到的错误:ORA-08189: 因为未启用行移动功能, 不能闪回表。   事情的经过是这样滴: SQL&gt; create table t1 as select * from emp; 表已创建。 SQL&gt; flashback table t1 to timestamp to_date('201111261902','yyyymmddhh24mi')...

十字路口的转角~转角的十字路口 231

FLASHBACK ORA-08189

基于UNDO的表恢复,被恢复的表必须启用ROW MOVEMENT。表的ROW MOVEMENT属性用来控制是否允许修改列值所造成的记录移动,有两种状态:enable和disable,默认情况下是DISABLE ROW MOVEM...

cuanpengchi4409的博客 170
上一篇: 使用DBMS_FILE_TRANSFER包拷贝文件
下一篇: oracle临时表空间过大的原因
常飞梦
常飞梦 领域专家: 数据库技术领域 领域专家: 数据库技术领域
博客等级 码龄21年 403粉丝 314原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值