色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

如何恢復oracle中被truncate掉的表

呂致盈2年前37瀏覽0評論

如何恢復oracle中被truncate掉的表?

當表被truncate后,需要馬上恢復。首先要做的就是關閉數據庫所有應用,或者OFFLINE那個表所在的表空間。目的只有一個,確保空間不會被重用數據不會被覆蓋。只要原來的空間沒有被重用(即數據被覆蓋),則數據都是可以恢復的。辦法大概有這么幾種:

一、使用Flashback Database功能找回被TRUNCATE表:

使用該方式首先需要數據庫處在歸檔模式下,并且開啟Flashback和force_logging功能;

其局限性在于這種方式實際是恢復數據庫到一定時間點,恢復數據庫過程需要數據庫重啟。

二、利用Oracle表掃描機制恢復被Truncate的數據:

提供了一個使用PLSQL編寫的存儲過程包來恢復被TRUNCATE的數據。

其原理基于TRUNCATE不會逐個清除用戶數據塊上的數據,而僅僅重置數據字典和元數據塊上的元數據(如存儲段頭和擴展段圖)。也就是說,此時,其基本數據并未被破壞,而是被系統回收、等待被重新分配————因此,要恢復被TRUNCATE的數據,需要及時備份其所在的數據文件。

三、使用Oracle數據恢復工具-ODU恢復被Truncate的數據:

ODU是比較好用且功能強大的數據恢復工具,它也是通過直接掃描數據文件來獲取誤刪的數據,遺憾的是現在已經商用了,正式版需要license,有需要的公司或個人可購買