oracle11g的闪回技术-闪回表-时间戳

--数据库闪回表

--1创建表(登录模式system)

CREATE table dept2 as select * from dept;--此语句如果加上where条件可用于工作中数据的临时备份

select * from dept2;--查询新建表信息

--进入sql>set time on 通过时间点闪回 记录弹出的时间点:类似linux命令行,可以设置带时间的如图所示,方便记录dml语句的操作时间戳,方便利用闪回时间戳

--2删除数据

DELETE FROM dept2 where deptno=12;

commit;

rollback;--通过回滚恢复不了数据了

--3利用闪回表恢复-需要启动行移动功能,否则无法闪回

alter table dept2 enable row movement;

flashback table dept2 to timestamp TO_TIMESTAMP('2024-01-17 10:03:41','yyyy-mm-dd hh24:mi:ss');--可以看到执行后,之前删除的记录又回来了。

--查看当前系统时间格式,

select sysdate from dual;

--通过下面可以修改会话的时间格式

alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

注意:

本案例操作过程中需要注意的就是做删除操作的时候,在sql>下执行,不要在客户端执行,开始时间点选择了在建表之前,报错提示如下:时间戳是从这里获取的参数

SQLflashback table dept2 to timestamp TO_TIMESTAMP('2023-01-17 10:03:41','yyyy-mm-dd hh24:mi:ss')
Err ORA-08180: no snapshot found based on specified time

后来修改了正确的时间戳就没有问题了

相关推荐
Linux_cy5 分钟前
nginx 502 排查手册:九种原因分类、定位命令与检查顺序
linux·运维·服务器·网络·数据库·nginx·ssh
在多学一点7 分钟前
MySQL_DDL的基本命令
数据库·mysql·adb
是程序喵呀1 小时前
Redis实现持久化
数据库·redis·缓存
z06.1 小时前
MySQL存储引擎
数据库·mysql
小徐不徐说1 小时前
数据库存储基础:理解表结构、主键、事务与 BLOB
开发语言·数据库·c++·qt·程序设计
JackLam1 小时前
Gitea HTTPS 反向代理配置
数据库
量子物理学1 小时前
oracle plsql instantclient 安装
数据库·oracle
草莓熊Lotso2 小时前
【C++ 基于微服务的即时通讯系统】网关基建:cpp-httplib 与 WebSocketpp 从入门到实战
linux·开发语言·数据库·c++·redis·微服务·云原生
ClickHouseDB10 小时前
ClickHouse Cloud 与 Snowflake 实时性价比对比:CostBench 测试中的 412 倍差距来
运维·数据库·系统架构
m0_6399069410 小时前
Redis入门|五种数据结构、使用场景、持久化RDB&AOF
数据结构·数据库·redis