<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      6.手工備份恢復--打開數據庫的備份與恢復(練習7、8)

      練習7:打開數據庫的完全數據庫恢復

      在出現數據庫故障時,可以用打開數據庫備份并應用重做信息,來完全恢復數據庫。
      步驟一:破壞數據庫
      首先需要將數據庫文件脫機解除操作系統對文件的鎖定,然后進行刪除,如下:

      1 SQL> ALTER DATABASE DATAFILE ‘D:/oracle/PRACTICE/tools01.dbf’ offline;
      2 SQL> ALTER DATABASE DATAFILE ‘D:/oracle/PRACTICE/users01.dbf’ offline;

       

      需要注意的是,在短時間內數據庫不會產生錯誤,因為Oracle將數據塊讀取到內存中。如所需的數據庫實現未在內存,數據庫將從磁盤讀取數據,對于更改過的數據塊也是如此,數據庫會發現文件已經不存在,將會提示如下錯誤信息:

       

      此時切換日志不會產生錯誤,因為這兩個丟失的文件不是聯機的,除非我們將這兩個文件恢復到聯機狀態。

      1 SQL> ALTER DATABASE DATAFILE ‘D:/oracle/PRACTICE/tools01.dbf’ online;
      2 SQL> ALTER DATABASE DATAFILE ‘D:/oracle/PRACTICE/users01.dbf’ online;

       由于數據庫處于變化中,提示如下信息:

       

      如果我們在這時視圖將數據庫關閉,Oracle會提示錯誤,在關閉Oracle進程需要成功完成對所有聯機數據文件的一個檢查點,可以通過數據文件脫機然后關閉數據庫。啟動數據庫,在打開數據庫時遇到錯誤,查看告警日志文件,在這個文件中,可以看到如下錯誤信息:

       
      步驟二:還原丟失的數據文件
      使用數據字典,獲取需要恢復的文件,可以通過如下方式進行查看: 

      1 SQL> SELECT * FROM v$recover_file;
      2 SQL> SELECT file#,ts#, status,name FROM v$datafile;

       

       打開數據庫備份腳本所使用的備份目的路徑下復制users01.dbf和tools.dbf文件,當把文件復制回他們原來的數據庫位置時,檢查v$recover_file中的內容,該視圖的值已經發生改變,change#列有一個值,這個數字與v$datafile視圖中的checkpoint_change#來的小。
       

       步驟三:恢復還原的數據文件
      為恢復一個表空間或一個數據文件,首先通過恢復數據文件恢復TOOLS表控件,然后使用RECOVER DATAFILE命令,從歸檔和聯機日志文件實施重做。
      可以通過文件號或文件名進行恢復:
      1 SQL> RECOVER DATAFILE 6;

       對于PRACTICE數據庫,文件5就是tools.dbf文件。恢復命令找出還原文件的檢查點SCN,并將此數值與重做日志文件中的SCN進行比較,確定哪些文件需要恢復,然后該文件將從歸檔目的路徑中讀出并用于數據文件,可以看到類似如下信息:

       

       數據文件恢復后,會得到如下消息:

       

       查看告警日志,看以看到恢復過程的時間基線

        

      這里介紹一下指定歸檔路徑的恢復,可以將文件復制到其初始位置或者告訴恢復命令去查看另一個路徑。

      1 SQL> RECOVER FROM ‘….’ DATAFILE 5;

       對于包含還原文件的整個表空間,可以使用RECOVER命令:

      1 SQL> RECOVER FROM ‘….’ TABLESPACE TOOLS;

       也可以在一個命令中恢復多個數據文件或表空間,在REOVER命令后寫上期望恢復的各個數據文件或表空間并用逗號隔開:

      1 SQL> RECOVER FROM  ‘D:\oracle\PRACTICE\ARCHIVE’;
      2          DATAFILE  ‘D:\oracle\PRACTICE\USERS01.DBF’,
      3                    ‘D:\oracle\PRACTICE\TOOLS01.DBF’;

       步驟四:確認數據庫恢復
      恢復數據文件后可使用ALTER DTABASE命令將數據文件置回到聯機狀態,如果數據文件成功置回到聯機狀態表明已經成功地恢復了這些數據文件,因為只有當這些被還原的數據文件與控件文件相匹配時,數據文件才能置回到聯機狀態。

      1 SQL> ALTER DATABASE DATAFILE ‘D:/oracle/PRACTICE/tools01.dbf’ online;
      2 SQL> ALTER DATABASE DATAFILE ‘D:/oracle/PRACTICE/users01.dbf’ online;

       

      查詢TINA.DATA_LOG中檢查數據,看是否能達到預期的數據。

       

      練習8:打開數據庫的不完全數據庫恢復

      該情況在實際情況將經常使用,所以本練習非常重要。該練習中我們將刪除一個用戶SCOTT的一個表(emp,具體創建請參考“2.Oracle10g備份恢復準備工作”),然后從先前的打開數據庫備份中還原所有文件,并利用備份控制文件恢復數據庫。
      步驟一:刪除一個表
      向TINA.DATA_LOG插入一筆時間為50年后的數據,切換日志,并從v$datafile中的 change#列中提取數據文件檢查點SCN號,記下這些就可以用DROP命令來刪除表了:

      1 SQL> INSERT INTO tina.date_log VALUES (sysdate+365*50);
      2 SQL> COMMIT;
      3 SQL> ALTER SYSTEM SWITCH LOGFILE;

       

       

      1 SQL> DROP TABLE scott.emp;
      2 SQL> SELECT * FROM tina.date_log; 
      3 SQL> ALTER SYSTEM SWITCH LOGFILE;

       

      刪除該表后插入一筆時間為8年后數據

      1 SQL> INSERT INTO tina.date_log VALUES (sysdate+365*8);
      2 SQL> COMMIT;
      3 SQL> SELECT * FROM tina.date_log;

       

      不完全恢復PRACTICE數據庫后將只能看到表中等于或早于刪除表之前記錄的時間的那些記錄。
      步驟二:重新命名一個歸檔日志
      練習4中不完全恢復是基于時間,本練習中是基于取消的恢復,當某一個歸檔日志文件損壞或丟失時,常使用取消的恢復。
      1 SQL> SELECT sequence# FROM v$log WHERE status=’CURRENT’;

       

      查看歸檔路徑,找出序號小于前面查詢結果返回序號的歸檔日志文件。例如,當前日志文件序號為13,定位D:\oracle\PRACTICE\ARCHIVE文件夾下名為ARC00012_0708077288.001的文件,將這個文件命名為ARC00012_0708077288.001.backup,在步驟5恢復數據庫時,模擬找不到該歸檔文件撤銷恢復。

       

      步驟三:還原數據庫
      關閉數據庫,使用刪除表之前所做的拷貝取代所有的數據文件(注意不要把備份的覆蓋當前聯機重做日志),然后把日志應用于所有的數據文件,直到表被刪除的某一時間點。在關閉數據庫之前如果時間允許,則需要實施全數據庫的關閉備份。

       

      步驟四:將數據庫恢復至某一時間點
      通過MOUNT方式啟動數據庫,查看v$recover_file的內容,看到所有的數據文件都需要恢復,值得注意的是除了USERS表空間的兩個文件外,所有的文件都擁有不同的更改號,這是因為這些數據文件在打開數據庫備份期間復制的。

       

      在此處恢復中,刪除表之前的日志文件序號是12,持續應用恢復命令中建議的日志,直到日志序號11,然后撤銷操作。

       

      1 SQL> RECOVER DATABASE;

        

      1 SQL> SET LOGSOURCE ‘D:\oracle\PRACTICE\ARCHIVE’;

       前面恢復中使用非缺省路徑,也可以在RECOVER命令之前用SET LOGSOURCE項打開數據庫。
      恢復完畢,需使用ALTER DATABASE OPEN命令中制定RESETLOGS,聯機重做日志將以數字1開始。強烈建議數據庫打開后進行備份,因為以前做的備份不能夠使用了。
      步驟五:確認恢復
      查看SCOTT.EMP表是否存在,從TINA.DATE_LOG中提取數據是否存在刪除表之前插入的數據,是否存在刪除表之后插入的數據。

      1 SQL> SELECT * FROM tina.date_log;

       

      posted @ 2010-01-17 11:05  shishanyuan  閱讀(1296)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 少妇激情av一区二区三区| 国产国产人免费人成免费| 亚洲区综合区小说区激情区| 久久综合伊人| 人人妻人人做人人爽夜欢视频| 欧美激烈精交gif动态图| 久久精品国产亚洲av久| 视频一区视频二区视频三区| 99精品国产综合久久久久五月天| 精品国产粉嫩内射白浆内射双马尾| 夜夜躁狠狠躁日日躁| 福利一区二区视频在线| 免费99视频| 午夜成人精品福利网站在线观看 | 国产欧美日韩综合精品二区| 久久夜色国产噜噜亚洲av| 精品国产免费一区二区三区香蕉| 亚洲性猛交xxxx| 囯产精品久久久久久久久久妞妞| 亚洲欧美成人一区二区在线电影| 偷拍专区一区二区三区| 国产av成人精品播放| 丰满老熟妇好大bbbbb| 被拉到野外强要好爽| 高潮迭起av乳颜射后入| 性无码专区无码| 亚洲精品无码成人A片九色播放| 亚洲 中文 欧美 日韩 在线| 国产成人无码区免费内射一片色欲| 亚洲精品国产美女久久久| 情欲少妇人妻100篇| 亚洲AV成人片不卡无码| 亚洲国产成人久久77| 国产乱女乱子视频在线播放| 亚洲国产成人久久综合同性| 亚洲精品自拍区在线观看| 中文有无人妻vs无码人妻激烈 | 亚洲综合精品第一页| 精品国产一区二区三区香蕉| 中文字幕av一区二区| 色综合视频一区二区三区|