全部课程

全部课程分类

培训乐帮返利流程

Oracle备份与恢复总结之Flashback

2012-04-25 19:46    发布者:nee1760    评论:0    浏览:450
摘要:Oracle备份与恢复总结之Flashback
    5.1 9i Flashback 简介
  5.1.1原理
  当数据update或delete时,原来的数据会保存在undo表空间中,保存的最少时间是 UNDO_RETENTION。实际的保存时间与 undo表空间的大小和数据更改的繁忙程度相关。 UNDO_RETENTION 的参数(单位为秒)指定 Oracle保存用于 flashback查询的 undo映像 的时间。一般你可以将这个值设为一整天(864000秒),这样你就能看到前一天全天的映像。 当然,你的在线 undo日志必须足够大,大到足以能保存一整天的 undo日志数据,对于繁忙
  的 Oracle系统,这个数值可以达到很大。
  5.1.2一些限制
  ?服务器必须配置成使用自动 undo管理。
  ?在使用 Flashback查询时不能使用 DDL或者 DML。
  ?Flashback 不取消 DDL操作,例如 DROP命令。 数据库管理员做一些必要的设置之后,一般用户才能使用 Flashback查询功能:
  SQL> ALTER SYSTEM SET UNDO_MANAGEMENT=AUTO SQL> ALTER SYSTEM SET UNDO_RETENTION=86400
  SQL> GRANT EXECUTE ON DBMS_FLASHBACK TO USERNAME;
  5.1.3获得SCN或时间点
  在 Flashback 时,可以尝试多个 SCN,获取最佳值。
  如果能得知具体时间,那么可以获得准确的数据闪回。
  SQL> alter session set nls_date_format=’YYYY-MM-DD HH24:MI:SS’; SQL> select sysdate from v$database;
  捕捉提交的 SCN://不知为什么,两种方法获得的 SCN不一样
  SQL> select dbms_flashback.get_system_change_number scn from dual;
  SQL> select max(ktuxescnw * power(2,32) + ktuxescnb) SCN from x$ktuxe;
  5.1.4启用或禁用flashback查询
  使用系统改变数(SCN)或者真实时间来指定 flashback 的时间点来获取数据映象。
  方法一:
  SQL> select * from [TABLE] as of scn 129292;
  SQL> select * from [TABLE] as of timestamp to_timestamp(’时间’, ’时间格式’);
  SQL>select*fromsaflogasoftimestampto_timestamp(’2007-12-1808:40:00’,
  ’YYYY-MM-DD HH24:MI:SS’);
  方法二:
  启用:
  SQL> exec dbms_flashback.enable_at_system_change_number(112112); SQL> exec dbms_Flashback.enable_at_time(’28-AUG-02 11:00:00’);
  启用后看到的只是闪回的结果,实际上并未恢复数据。且闪回状态下不能做
  DML操作。可以先恢复到一个临时表中。见示例。
  禁用:
  SQL> execute dbms_flashback.disable();
  :

  5.1.5示例:
  declare
  cursor c1 is select * from scott.emp_temp;
  r_c1 scott.e%rowt ype;
  begin
  loop
  dbms_flashback.enable_at_system_change_number(49570);
  if c1%isopen=false then open c1;end if;
  fetch c1 into r_c1;
  dbms_flashback.disable();
  exit when c1%notfound;
  update scott.emp_temp set sal=r_c1.sal where empno=r_c1.empno;
  commit;
  end loop;
  exec dbms_flashback.disable();
  close c1;
  end;
  /
  5.2 10g Flashback 的增强
  10g 的 Flashback进行了增强和修改,通过回闪,用户可以完成许多不可能恢复的
  工作,目前 oracle10g 的回闪包括以下特性;
  1〉oracle falshback Database.
  该特性允许 oracle 通过 Flashback database 语句,将数据库会滚到前一个时间点或者
  scn 上,而不需要作时间点的恢复工作!
  2〉oracle falshback table.
  该特性允许 oracle通过 flashback table 语句,将表会滚到前一个时间点或者 scn 上。
  3〉oracle falshback drop.
  该特性允许 oracle把恢复 drop掉的 table 或者索引。
  4〉oracle falshback version query.
  该特性可以得到特定的表在某一个时间段内的任何修改记录!
  5〉oracle falshback transaction query
  该特性可以限制用户在某一个事务级别上检查数据库的修改操作,适用于诊断问 题、分析性能、审计事务。

0 顶一下
更多>>
Oracle认证机构推荐
更多>>
Oracle认证课程推荐
Oracle认证相关文章
ORACLE数据库管理与性能调优
如何备份Oracle认证资格考试数据库
轻松应对ORACLE面试中的问题技巧
在Oracle中屏蔽英文提示信息的简单方法
如何实现Oracle数据库文件移动的简单方法
Oracle中4G以上内存使用 我来告诉你
如何备考Oracle认证
Oracle认证考试常见问题解答
Oracle认证种类介绍
OCAOCP认证通关经验分享
Oracle认证考试报考指南
心得共享:Oracle经验技巧集锦
VI的常见使用技巧
Oracle认证:PGA内存配置和使用
实用心得:虚拟机下Oracle的安装
Oracle备份与恢复总结之Flashback
Oracle数据库开发的一些经验积累
使用Oracle9i数据库程序的相关注意事项
为什么要参加OCP考试?
Oracle认证学习培训及考试心得


如果您要进行评论信息,请先 登录 或者 快速注册 。
评论总数:0

网友评论

为什么选择优训网
  • 贵就赔 报名价同班最低
    差价双倍返还
  • 顾问服务 培训最怕时间和钱花了,东西没学到
    专业顾问,给你内行建议
  • 点评返利 学完后分享点评,
    不仅能帮助别人,
    还能获得返利

服务热线:400-68-12568

扫一扫 就有礼!
关注优训网新浪微博
有价值的教育培训资讯 扫一扫 收听优训网微信