intel atom z3580:备份恢复 truncate drop

来源:百度文库 编辑:偶看新闻 时间:2024/06/11 16:10:48

转载自:http://www.360dba.com/portal.php?mod=list&catid=32

备份恢复


备份恢复:truncate能恢复
本小节通过闪回了整个数据库找回了被truncate的数据,不过现实中这样闪回整个数据库的操作可能只适合在开发库和测试库,生产中做这样操作的可能性非常小,首先是闪回整个庞大的数据库要足够的空间,其次是你如果闪回 ...
2010-11-5 11:53
备份恢复:drop表能恢复
本小节到此结束了,我觉得ORACLE在人性化方面还是做的不错!误删并提交了记录能帮你找回,误删了整个表在10g中还有回收站助你一臂之力,期待计费结算系统日后都升级到10g,10g功能强大,除了闪回增强外,还有很多其他 ...
(修改其中一处错误:

以下命令为清空所有回收站内容      

SQL> PURGE RECYCLEBIN;                       

Done             

SQL> select count(*) from dba_recyclebin; --此处应该为dba_recyclebin而不是user_recyclebin   

  COUNT(*)                               

-------------------                             

      0 

)
恢复drop表:
SQL> FLASHBACK TABLE ljb_testdrop TO BEFORE DROP;
表存在多次drop情况下,指定object_name进行恢复:--此处原文有一处错误,table_owner."BIN$VgNjSLWrTzSEtnnRNGdCBQ==$0" 必须要加上该表的用户才可以恢复,而后面rename的表就不用加 所属用户+点 了
SQL> FLASHBACK TABLE table_owner."BIN$VgNjSLWrTzSEtnnRNGdCBQ==$0" TO BEFORE DROP rename to ljb_testdrop2;
2010-11-5 11:51
备份恢复:更新提交能找回数据
简单说一下,9i中闪回的功能比较弱, drop和truncate无能为力了,如果是10g的话,表drop了,可以通过垃圾站回收,truncate则是通过闪回整个数据库来找回,至于过好几天才发现能否闪回,取决于回滚段中的记录是否被重 ...
补充:尝试使用flashback query闪回数据
首先通过v$archived_log试图来确认数据库的scn变化,
SQL>select name , FIRST_CHANGE# fscn , NEXT_CHANGE# nscn,FIRST_TIME from v$archived_log;
使用应用用户尝试闪回:
SQL>conn username/password
SQL>create table hs_passport_recov as select * from hs_passport where 1=0;
SQL>select count(1) from hs_passport as of scn 12929970422;
SQL>select count(1) from hs_passport as of scv &scn;
SQL>insert into hs_passport_recov select * from hs_passport as of scn 12929970422;
SQL>commit;
2010-11-5 11:48
备份恢复:别让数据库处于非归档模式
相信这个例子能让大家明白,即便不是DBA,没人叫你制定备份与恢复的策略,你只要将数据库设置为归档模式下,找回丢失的数据就成了一种可能。
SQL> archive log list
SQL> shutdown immediate
SQL> startup mount;
SQL> alter database create datafile 'c:\oracle\ljb\test.dbf' ;
SQL> recover datafile 'c:\oracle\ljb\test.dbf'
SQL> alter database open;
2010-11-5 11:47