国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Oracle使用fy_recover_data恢復(fù)truncate刪除的數(shù)據(jù)

瀏覽:191日期:2023-03-12 15:25:21
目錄
  • 前言
  • 1.創(chuàng)建測試表
  • 2.truncate table pak_tab
  • 3 編譯fy_recover_data包
  • 4.執(zhí)行fy_recover_data包
  • 5.把數(shù)據(jù)插回原表
  • 6.校驗數(shù)據(jù)
  • 總結(jié)

前言

TRUNCATE不會逐個清除用戶數(shù)據(jù)塊上的數(shù)據(jù),而僅僅重置數(shù)據(jù)字典和元數(shù)據(jù)塊上的元數(shù)據(jù)(如存儲段頭和擴展段圖)。也就是說,此時,其基本數(shù)據(jù)并未被破壞,而是被系統(tǒng)回收、等待被重新分配。

如果我們已經(jīng)有一套元數(shù)據(jù)及數(shù)據(jù)塊,然后將被TRUNCATE的用戶數(shù)據(jù)塊的內(nèi)容取代其用戶數(shù)據(jù)塊的內(nèi)容,是否可以“騙”過Oracle,讓它讀出這些數(shù)據(jù)呢? 回顧一下表掃描的過程,這個方法應(yīng)該是可行的。我們只要想辦法構(gòu)造出一個結(jié)構(gòu)相同、且具有完整元數(shù)據(jù)信息和格式化了的用戶數(shù)據(jù)塊的傀儡表對象,然后將被TRUNCATE的用戶數(shù)據(jù)塊找出,再將其數(shù)據(jù)內(nèi)容部分嫁接到傀儡對象的用戶數(shù)據(jù)塊,使Oracle以外這是傀儡對象的數(shù)據(jù),就能讓Oracle掃描并讀出數(shù)據(jù)內(nèi)容。

1.創(chuàng)建測試表

SQL> create table pak_tab as select * from dba_objects;
Table created.
SQL> select count(*) from pak_tab;
COUNT(*)
----------
86262

2.truncate table pak_tab

SQL> truncate table pak_tab;
Table truncated.
SQL> select count(*) from pak_tab;
COUNT(*)
----------
0
SQL> select owner from sys.pak_tab where rownum<=1;
OWNER
------------------------------
SYS

3 編譯fy_recover_data包

SQL> @fy_recover_data.pck
Package created.
Package body created.

4.執(zhí)行fy_recover_data包

SQL> exec fy_recover_data.recover_truncated_table("sys","pak_tab");
PL/SQL procedure successfully completed.
SQL> SELECT COUNT(*) FROM pak_tab;
COUNT(*)
----------
0
SQL> SELECT COUNT(*) FROM pak_tab$$;

COUNT(*)
----------
86262

5.把數(shù)據(jù)插回原表

SQL> alter table pak_tab nologging;
Table altered.
SQL> insert /*+append*/ into pak_tab select * from pak_tab$$;
86262 rows created.
SQL> commit;
Commit complete.
SQL> alter table pak_tab logging;
Table altered.

6.校驗數(shù)據(jù)

SQL> select count(*) from pak_tab;

COUNT(*)
----------
86262

總結(jié)

1,刪除因為恢復(fù)表自動創(chuàng)建的兩個表空間

  • drop tablespace fy_rec_data including contents and datafiles;
  • drop tablespace fy_rst_data including contents and datafiles;

2,truncate以后,要保證沒有新數(shù)據(jù)灌入

3,存儲該表的數(shù)據(jù)文件不能覆蓋。否則無法完成恢復(fù)。

4,緊急時刻可以將表空間設(shè)為只讀

5,備份的關(guān)鍵性,合理的備份策略是DBA最后的救命稻草,請重視備份!對數(shù)據(jù)懷有敬畏之心!!

到此這篇關(guān)于Oracle使用fy_recover_data恢復(fù)truncate刪除的數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Oracle 恢復(fù)truncate刪除數(shù)據(jù)內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

標(biāo)簽: Oracle
主站蜘蛛池模板: 97婷婷狠狠成人免费视频 | 亚洲羞羞裸色私人影院 | 欧美俄罗斯一级毛片激情 | 国产高清天干天天视频 | 久久综合免费视频 | 男人在线网址 | 中文字幕无线码中文字幕网站 | 欧美性色欧美a在线播放 | 日韩欧美一级毛片在线 | aaa毛片手机在线现看 | 国产一区二区久久 | 在线欧美一级毛片免费观看 | 欧美一级在线观看视频 | 女人张开双腿让男人桶完整 | 亚洲天堂资源网 | 加勒比一本大道香蕉在线视频 | 国产成人黄网址在线视频 | 美女张开腿让男人桶爽动漫视频 | 91人碰 | 一区二区三区四区在线免费观看 | 欧美另类激情 | 亚洲欧美日韩精品香蕉 | 韩国巨胸女三级视频网 | 国产67194 | 午夜精品同性女女 | 国内精品久久久久久久久 | 99re6热视频精品免费观看 | 亚洲国产精品乱码在线观看97 | 国产一区二区fc2ppv在线播放 | 999成人国产精品 | 中国人免费观看高清在线观看二区 | 欧美三区在线 | 伊人色综合久久成人 | 日韩中文字幕免费在线观看 | 免费特黄一级欧美大片 | 手机国产精品一区二区 | 国产一区二区在线视频 | 男女午夜免费视频 | 久久精品国产91久久综合麻豆自制 | 美女网站色免费 | 国产成人午夜片在线观看 |