刪庫不跑路 Oracl刪表資料恢復之快照恢復

2021-09-29 03:37:49 字數 872 閱讀 3356

1、需求任務:批量處理運維

因業務上的需求,需要去對幾個表進行批量資料維護(此處就不吐槽業務設計);

2、操作:刪除表資料

單身練就的手速,執行刪除語句時沒有選擇where條件內容,由於對自己過於自信,沒有將表資料備份,結果完蛋!事實證明,自信過頭=自負,自負的人往往沒有好下場。

3、恢復資料

臨危不亂的我想到了oracle的乙個特性》oracle快照:即物化檢視儲存。

解決方案:根據時間點從快照中恢復資料。

方法1操作步驟:

確定刪除時間點,查詢被刪的表資料:

select * from 表名 as of timestamp to_timestamp(『2019-10-29 18:35:00』,『yyyy-mm-dd hh24:mi:ss』) where 條件;

將刪除的資料恢復到表中:

insert into 表名(select * from 表名 as of timestamp to_timestamp(『2019-10-29 18:35:00』,『yyyy-mm-dd hh24:mi:ss』) where 條件);

若是恢復整張表資料,可以用方法2:

開啟行移動功能:

alter table 表名 enable row movement;(使用者必須要有flash any table許可權)

執行表恢復語句:

flashback table 表名 to timestamp to_timestamp(『2019-10-29 18:35:00』, 『yyyy-mm-dd hh24:mi:ss』);

關閉行移動功能:

alter table 表名 disable row movement

4、總結

備份資料庫及其重要!切記!!!

刪庫不跑路

2020年2月23日,微盟員工賀某登入公司伺服器將微盟伺服器內資料全部刪除。導致300餘萬使用者無法正常使用該公司saas產品,造成公司經濟損失超10億。2020年8月26日,思科前員工sudhish kasaba ramesh非法入侵思科公司的雲基礎設施,並破壞大量資源。導致公司456個webex...

刪庫不跑路之Mysql資料恢復

前言 既然要恢復,肯定要先備份,如何備份看這篇mysql資料庫備份 gunzip miaosha 202008061026.sql.gz方式一,linux命令列下 mysql uroot p db2 miaosha 202008061026.sql 方式二,mysql命令列下 source miao...

刪庫刪目錄 跑路

刪庫刪目錄 dirdata public web public apk public h5 thinkphp public js public pay vendor dbhost 127.0.0.1 mysql伺服器主機位址 dbuser 資料庫使用者名稱 mysql使用者名稱 dbpass 資料庫...