[转帖]Oracle闪回特性_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3514 | 回复: 0   主题: [转帖]Oracle闪回特性        下一篇 
masy
注册用户
等级:少校
经验:1234
发帖:182
精华:0
注册:2011-11-4
状态:离线
发送短消息息给masy 加好友    发送短消息息给masy 发消息
发表于: IP:您无权察看 2011-11-14 16:08:18 | [全部帖] [楼主帖] 楼主

Oracle的操作工程中,会不可避免地出现操作失误或者用户失误,例如不小心删除了一个表等,这些失误和错误可能会造成重要数据的丢失,最终导致Oracle数据库停止。在传统意义上,当发生数据丢失、数据错误问题时,解决的主要办法是数据的导入导出、备份恢复技术,这些方法都需要在发生错误前,有一个正确的备份才能进行恢复。为了减少这方面的损失,Oracle提供了闪回技术。有了闪回技术,就可以实现数据的快速恢复,而且不需要数据备份。闪回的类型:

    闪回表(flashback table) :恢复到过去的一个是时间点

    闪回删除(flashback drop) :回收站中将已删除的对象恢复到删除之前的状态

    闪回版本查询(flashback version query) :查看用户提交了的增删改的操作以及相应操作时间的记录

    闪回事务查询(flashback transaction query) :查询某个事务甚至撤销一个已经提交的事务

    闪回的益处

    恢复中,闪回技术是革命性的进步

    传统的恢复技术缓慢:

    •它是整个数据库或者一个文件恢复,不只恢复损坏的数据

    •在数据库日志中每个修改都必须被检查

    闪回速度快:

    •通过行和事务把改变编入索引

    •仅仅改变了的数据会被恢复

    闪回命令很容易:

    •没有复杂棘手的多步程序

    闪回表

    闪回表,实际上是将表中的数据快速恢复到过去的一个是时间点或者系统改变号SCN上。实现表的闪回,需要使用到与撤销表空间相关的undo信息,通过show parameter undo命令可以了解这些信息。

    用户对表数据的修改操作,都记录在撤销表空间中,这为表的闪回提供了数据恢复的基础。例如,某个修改操作在提交后被记录在撤销表空间中,保留时间为900秒,用户可以在这900秒的时间内对表进行闪回操作,从而将表中的数据恢复到修改之前的状态。

    闪回表的步骤:

    1.执行表的闪回要设置用户权限:grant flashback any table to scott;

    2. 获取要恢复的点(SCN) select sysdate 时间, timestamp_to_scn(sysdate) SCN from dual;

    3. 将表的行移动功能打开:alter table flshback_table enable row movement;

    4. 执行闪回表:flashback table flashback_table to scn 945018(获取到的scn号,也可指定在某个时间段恢复);




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论