网站首页 > 技术文章 正文
概述
Oracle 引入闪回技术使得一些逻辑误操作不再需要利用归档日志和数据库备份进行时间点恢复,在前面介绍的诸多闪回技术中,除了Flashback Database依赖于闪回日志外,其它闪回技术都是依赖于Undo撤销数据,都与数据库初始化参数undo_retention密切相关,所以就存在一个限制就是undo中的信息不能被覆盖。
Oracle11g中的闪回数据归档(Flashback Data Archive)与前面所说的闪回技术实现机制不同,它是通过将变化数据存储到创建的闪回归档区中,得以与undo区别开来。 同时Flashback Data Archive 并不是记录数据库的所有变化,而只是记录了指定表的数据变化,是Flashback database的补充。
1.体系结构
2.配置闪回数据归档
准备一个Oracle 11g数据库使用FBDA功能是相当简单的,只需要经过几个简单的步骤即可:
(1) 创建或指定一个或多个表空间用于FBDA保留历史数据
(2) 随意指派一个FBDA作为数据库的默认FBDA
(3) 指派一个用户账户作为FBDA管理员,授予它FLASHBACK ARCHIVE ADMINISTER系统权限
(4) 授予FBDA权限给适合的用户账号
(5) 授予FLASHBACK和SELECT权限给合适的FBDA表用户
(6) 为FBDA用户授予DBMS_FLASHBACK存储过程EXECUTE权限
3.访问历史记录数据的基本工作流:
创建闪回数据归档:
1. 创建闪回数据归档:
CREATE FLASHBACK ARCHIVE fla1 TABLESPACE tbs1 QUOTA 10GRETENTION 5 YEAR;
2. 对 FLA1 归档中的表启用历史记录跟踪:
ALTER TABLE inventory FLASHBACK ARCHIVE fla1;
3. 查看历史记录数据:
SELECT product_number, product_name, count FROM inventory AS OF TIMESTAMPTO_TIMESTAMP ('2019-01-01 00:00:00', 'YYYY-MM-DD HH24:MI:SS');
使用默认闪回归档:
1.创 建 默 认 闪 回 数 据 归 档
CREATE FLASHBACK ARCHIVE DEFAULT fla2TABLESPACE tbs1 QUOTA 10G RETENTION 2 YEAR;
2.对表启用历史记录跟踪:
ALTER TABLE stock _data FLASHBACK ARCHIVE;
注:因为使用了默认的闪回数据归档,所以不需要提供闪回数据归档名称。
3. 禁用历史记录跟踪:
ALTER TABLE stock _data NO FLASHBACK ARCHIVE;
4.维护闪回数据归档
1. 增加空间:
ALTER FLASHBACK ARCHIVE fla1 ADD TABLESPACE tbs3 QUOTA 5G;
2. 更改保留时间:
ALTER FLASHBACK ARCHIVE fla1 MODIFY RETENTION 2 YEAR;
3. 清除数据:
ALTER FLASHBACK ARCHIVE fla1 PURGE BEFORETIMESTAMP(SYSTIMESTAMP - INTERVAL '1' day);
4. 删除闪回数据归档:
DROP FLASHBACK ARCHIVE fla1;
篇幅有限,关于闪回归档就不做演示了,大家可以自己在虚拟机环境做相关测试。
后面会分享更多关于devops和DBA方面内容,感兴趣的朋友可以关注下!
猜你喜欢
- 2024-10-19 一文总结postgresql wal日志参数、归档、清理及常用命令
- 2024-10-19 Oracle数据库redo日志暴增,怎么查出是哪些sql语句影响导致?
- 2024-10-19 Oracle总体架构 oracle体系结构详解
- 2024-10-19 使用易备数据备份软件,简单快速地备份 Oracle 数据库
- 2024-10-19 分享一个定时清除前5天归档的脚本
- 2024-10-19 数据库容灾——Oracle DataGuard原理介绍
- 2024-10-19 Oracle Rman概述及最佳备份策略 oracle rman catalog
- 2024-10-19 RMAN-08137 主库无法删除归档文件
- 2024-10-19 详解mysql数据库binlog--机制、格式、相关参数等
- 2024-10-19 oracle体系结构概述 oracle 体系
你 发表评论:
欢迎- 593℃几个Oracle空值处理函数 oracle处理null值的函数
- 586℃Oracle分析函数之Lag和Lead()使用
- 574℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 571℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 567℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 559℃【数据统计分析】详解Oracle分组函数之CUBE
- 546℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 540℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端懒加载 (49)
- 前端获取当前时间 (50)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)