自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Oracle數(shù)據(jù)庫(kù)利用日志挖掘來(lái)恢復(fù)誤刪除的數(shù)據(jù)

數(shù)據(jù)庫(kù) Oracle
本文主要介紹了利用日志挖掘Oracle不完全恢復(fù)來(lái)恢復(fù)誤刪除的表、數(shù)據(jù)和視圖的方法,希望能夠?qū)δ兴鶐椭?/div>

數(shù)據(jù)庫(kù)操作中,當(dāng)我們誤刪除了表、數(shù)據(jù)或者是視圖等,可以利用日志挖掘Oracle不完全恢復(fù)進(jìn)行恢復(fù),本文主要就介紹了利用日志挖掘Oracle不完全恢復(fù)來(lái)恢復(fù)數(shù)據(jù)的方法,接下來(lái)我們就開始介紹這一過程。

實(shí)施該方法需要滿足兩個(gè)條件:1. DB工作在歸檔模式下;  2. 有冷準(zhǔn)備份的數(shù)據(jù)文件。

接下來(lái)我們介紹恢復(fù)過程,格式如下:

  1. col script for a80    
  2.  
  3. col SQL_REDO for a80  

 

-- 拼接從哪里挖的語(yǔ)句

 

  1. select 'exec dbms_logmnr.add_logfile('''||member||''')' as script from v$logfile;  

 

-- 從哪里挖  

 

  1. exec dbms_logmnr.add_logfile('/oracle/oradata/orcl_new/redo03.log');     
  2.  
  3. exec dbms_logmnr.add_logfile('/oracle/oradata/orcl_new/redo02.log');    
  4.  
  5. exec dbms_logmnr.add_logfile('/oracle/oradata/orcl_new/redo01.log');  

 

-- 開始挖   

 

  1. exec dbms_logmnr.start_logmnr; 

 

-- 找結(jié)果 --> 要恢復(fù)的語(yǔ)句時(shí)的時(shí)間戳;   

 

  1. select scn, sql_redo from v$logmnr_contents where sql_redo like 'drop table emp%';    
  2.  
  3.        SCN SQL_REDO    
  4.  
  5. ---------- --------------------------------------------------------------------------------     
  6.  
  7.    1036547 drop table t1 purge;    
  8.  
  9.    1037333 drop table scott.emp purge;    
  10.  
  11. --  1037333 -->要恢復(fù)的時(shí)間戳  

 

-- 關(guān)掉DB   

  1. shutdown abort 

 

-- 拷貝冷備的文件 -- *.dbf 到數(shù)據(jù)文件目錄下,并進(jìn)行覆蓋;因?yàn)橐萌罩景?nbsp;sys,user等表空間的數(shù)據(jù),重做一次;   

  1. [oracle@OracleWeblogic orcl_new_bk]$ cp *.dbf ../orcl_new/ 

-- 啟動(dòng)到 mount 下

 

  1. startup mount 

 

-- 恢復(fù)到 1037333 drop table scott.emp purge  的時(shí)間點(diǎn);   

-- 要求:trc   

 

  1. recover database until change 1035742;  

 

-- 啟動(dòng)DB in resetlogs; 

 

  1. alter database open resetlogs;  

 

原理:

1.冷備份的數(shù)據(jù)文件 *.dbf比現(xiàn)在要舊,那么數(shù)據(jù)文件的scn肯定就比現(xiàn)在的?。?nbsp; 

2.使用日志挖掘方法,在日志中找出刪表時(shí)的scn;  

3.在數(shù)據(jù)庫(kù)shutdown 的狀態(tài)下,用冷備份的數(shù)據(jù)文件 *.dbf,覆蓋現(xiàn)在的*.dbf文件;-- 保證數(shù)據(jù)文件完整性   

4.啟動(dòng)DB到 mount 下, 恢復(fù)到日志挖掘的時(shí)間點(diǎn)(利用日志對(duì)數(shù)據(jù)文件重做一次)  

5.以 resetlog 方式 open --- 以前的日志就覆蓋了;   

PS:

數(shù)據(jù)庫(kù)有四種狀態(tài)shutdown、nomount、mount、open。

shutdown是指關(guān)閉狀態(tài)。

nomount是指根參數(shù)文件已經(jīng)構(gòu)造出實(shí)例的狀態(tài)。

mount是指為實(shí)例打開控制文件,并讀出控制文件中相關(guān)信息,但并不驗(yàn)證。

open是指對(duì)相關(guān)文件進(jìn)行驗(yàn)證,如沒有問題,就打開,讓用戶可以訪問。

關(guān)于利用日志挖掘Oracle不完全恢復(fù)恢復(fù)誤刪除的表/數(shù)據(jù)/視圖等的操作就介紹到這里了,希望能夠帶給您一些收獲吧!

【編輯推薦】

  1. SQL Server 2008的BI組件SSAS使用詳解
  2. Oracle數(shù)據(jù)庫(kù)如何增加scott用戶與相關(guān)的表
  3. Oracle數(shù)據(jù)庫(kù)排序ORDER BY子句的使用總結(jié)篇
  4. 簡(jiǎn)單介紹一下Oracle數(shù)據(jù)庫(kù)PL/SQL異常處理代碼
  5. SQL Server數(shù)據(jù)同步Merge的一個(gè)BUG及解決方法
責(zé)任編輯:趙鵬 來(lái)源: CSDN博客
相關(guān)推薦

2017-04-01 18:30:47

MySQL誤刪除數(shù)據(jù)庫(kù)

2018-04-28 15:28:44

數(shù)據(jù)庫(kù)MySQL誤刪除

2017-04-01 09:00:00

數(shù)據(jù)庫(kù)誤刪除案例及建議

2022-11-08 08:11:52

PG數(shù)據(jù)庫(kù)防誤

2017-02-06 10:53:33

2024-08-09 10:06:09

2019-08-20 14:02:07

MongoDB數(shù)據(jù)庫(kù)恢復(fù)數(shù)據(jù)

2011-05-24 10:26:12

Oracle數(shù)據(jù)庫(kù)日志文件

2010-04-02 09:44:23

Oracle數(shù)據(jù)庫(kù)

2019-10-11 09:55:53

數(shù)據(jù)工具架構(gòu)

2011-05-26 15:27:08

Oracle數(shù)據(jù)庫(kù)

2009-12-21 16:17:01

2017-10-16 16:43:05

數(shù)據(jù)庫(kù)Oracle數(shù)據(jù)丟失

2010-03-31 10:39:40

RMANOracle

2010-11-19 13:28:13

2020-09-30 06:00:00

Linux誤刪除恢復(fù)文件

2011-03-24 17:21:42

Oracle數(shù)據(jù)庫(kù)Redo故障

2011-05-11 13:25:57

Oracle數(shù)據(jù)庫(kù)后備恢復(fù)

2011-08-03 18:42:21

Oracle數(shù)據(jù)庫(kù)重做日志

2009-11-20 13:29:59

Oracle數(shù)據(jù)庫(kù)恢復(fù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)