DB2學習之表誤刪除恢復

DB2 DROP表後恢復

數據庫版本

數據庫版本:DB2 9.7

目的:

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

注意:

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

第一:備份數據庫,

做什麼事情之前備份數據庫,重要的事說三遍:備份!備份!備份!命令:db2 backup db dbname to ‘e:\xxxx’

第二:開啓歸檔模式:

       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代替)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章