DB2學習之表誤刪除恢復

2021-09-11 18:16:29 字數 1002 閱讀 6028

db2 drop表後恢復

資料庫版本

資料庫版本:db2 9.7

目的:由於經常操作不當,引起誤刪表和資料庫,對資料恢復起來很困難,其實測試後也覺得沒什麼挺容易的,特此親自測試,得出一恢復方法,總結如下文旦,如有不當還請及時提出;

注意:在恢復之前一定要備份資料庫,在恢復中需要時間截點,不同版本資料庫的時間軸不一樣,所以需要注意;

第一:備份資料庫,

做什麼事情之前備份資料庫,重要的事說三遍:備份!備份!備份!命令:db2 backup db dbname to 『e:\***x』

第二:開啟歸檔模式:

db2 update db cfg for dbname using logretain on//啟用歸檔日誌 

dbname為資料庫例項名;

按照該命令直接修改為歸檔模式

第三:刪除表以及資料:

drop table  表

第四:對要實施drop table recovery的表空間(限regular tablespace),執行:

db2 "alter tablespace 表空間名稱 dropped table recovery on"

第五:用 list history droppedtable all for dbname

得到刪除表tableid(例如 0000000000006d0000020003)和表結構的生成語句(ddl),記錄tableid和該語句以便恢復。之後,用drop命令刪除的表中的資料可以在前滾恢復時匯出。

命令為: db2  list history droppedtable all for dbname

第六:檢視本機資料庫的時間截點格式

命令為:select current timestam frompsysibm.sysdummy1

第七:根據時間截點,來使用recover恢復命令如下:

db2 recover database dbname  to 2016-08-29-10.16.25.000000(毫秒如果查詢不到用0代替)

恢復某張表 PostgreSQL恢復誤刪除資料

今天早上發生了一件事,業務人員一不小心刪除了某張表的資料。說實話大哥我玩兒pg也不久,很多運維經驗也是邊踩坑邊總結,所以在誤刪除恢復這件事上哥的經驗還是比較匱乏的。而且還有一件比較可怕的事情是該資料庫的物理備份還沒有弄好。現實 打臉,只怪自己學藝不深。研究一通之後發現並不是外掛程式問題。以下是在測試...

oracle誤刪除表資料,資料恢復

2016 10 23 00 05 45 silence dark 分類專欄 oracle筆記 oracle資料庫delete誤刪除,commit提交後,恢復資料的方法 1.查詢最近更新資料之前的資料 select from tablename as of timestamp to timestamp...

誤刪除Oracle表空間,恢復,重刪除,新建

起因 建立臨時表空間沒有使用temporary關鍵字,所以直接硬碟誤刪除了表空間,所以現在要恢復誤建立的表空間,並進行正確刪除,重新建立 錯誤資訊 ora 01033 oracle initialization or shutdown in progress原因 在oracle資料檔案目錄 例如 d...