<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    Oracle備份基礎理論
    ?
    ??? 轉一篇關于Oracle備份的基本原理文章。之前還沒有系統得學習過Oracle的備份方式和內容。這篇文章雖然沒有具體的備份操作介紹,但是從理論上來說已經很全面得涵蓋了Oracle備份的方式和備份類型。在具體掌握Oracle的備份、恢復之前,很有必要學習一遍。下面是正文:
    ?
    ===========================================================
    作者: yangtingkun(
    http://yangtingkun.itpub.net )
    發表于: 2006.01.09 23:36
    分類: 讀書筆記
    出處:
    http://yangtingkun.itpub.net/post/468/50318
    -----------------------------------------------------------
    ?
    這一章比較詳細的介紹了數據庫備份的概念和原理。
    ?
    物理備份和邏輯備份
    ?
    ??? 物理備份:備份數據庫的物理文件,包括數據文件、控制文件和歸檔日志文件。
    ?
    ??? 物理備份又分為兩種類型:一種是映像拷貝(Image Copy),另一種是備份為一種私有格式。映像拷貝是指數據文件、控制文件和歸檔日志文件的確切備份。映像拷貝可以由操作系統命令或RMAN的copy命令生成。而RMAN的backup命令產生一個備份集,備份集是一個包含一個或多個backup piece的邏輯對象。每個backup piece都是一個以私有的二進制格式存放的物理文件。用戶只能通過RMAN來恢復backup piece。
    ?
    ??? 邏輯備份:將數據庫中的用戶對象導出到一個二進制文件中。EXPORT和IMPORT是Oracle提供的導入導出工具,由于將數據庫對象導出到操作系統二進制文件中,或由二進制文件中把數據導入到數據庫中。EXP和IMP可以作為備份的補充方法,但是不要把EXP和IMP當然唯一的數據庫備份方案。
    ?

    整庫備份和部分數據庫備份
    ?
    ??? 整庫備份:包括當前和控制文件和所有的數據文件。整庫備份是最常見的備份形式。整庫備份可以是一致性備份也可以是不一致性備份。備份是否是一致的決定還原數據文件后是否應用日志文件。可以用下列辦法完成整庫備份:
    ?
    ??? 1、通過操作系統命令拷貝所有的數據文件和當前的控制文件;
    ??? 2、RMAN的BACKUP DATABASE命令;
    ??? 3、對每個數據文件執行RMAN的COPY DATAFILE命令,并通過COPY CURRENT CONTROLFILE備份當前的控制文件。
    ?
    ??? 表空間備份:備份構成表空間的所有數據文件。表空間的備份,不管是聯機備份還是脫機備份,數據庫都必須處于歸檔模式下。這是由于需要重做日志將這個表空間恢復到和數據庫中其它表空間一致的狀態。如果數據庫是非歸檔模式,則表空間備份只對只讀表空間或正常脫機的表空間有效,因為它們不需要重做日志進行恢復。使用下面的方法進行表空間的備份:
    ?
    ??? 1、通過操作系統命令拷貝表空間下的所有數據文件;
    ??? 2、RMAN的BACKUP TABLESPACE命令;
    ??? 3、對表空間的每個數據文件執行RMAN的COPY DATAFILE命令。
    ?
    ??? 數據文件備份:數據文件備份是指單獨一個數據文件的備份。數據文件備份只對歸檔模式有效。在非歸檔的數據庫中,必須滿足以下條件:
    ?
    ??? * 表空間中下所有的數據文件都是備份的;
    ??? * 數據文件是只讀的或正常脫機的。
    ?
    ??? 使用下面的方法備份數據文件:
    ?
    ??? 1、操作系統命令;
    ??? 2、RMAN的BACKUP DATAFILE命令;
    ??? 3、RMAN的COPY DATAFILE命令。
    ?
    ??? 控制文件備份:備份控制文件是備份和恢復中至關重要的一個方面。缺少控制文件,將無法加載并打開數據庫。如果使用RMAN作為備份和恢復的解決方案,運行CONFIGURE CONTROLFILE AUTOBACKUP命令,則RMAN在進行BACKUP或COPY工作時,自動備份控制文件。可以通過下面的方法手工備份控制文件:
    ?
    ??? 1、RMAN的BACKUP CURRENT CONTROLFILE創建RMAN特殊的控制文件的備份,COPY CURRENT CONTROLFILE命令創建控制文件的映像備份;
    ??? 2、通過SQL語句ALTER DATABASE BACKUP CONTROLFILE創建控制文件的二進制的備份;
    ??? 3、通過SQL語句ALTER DATABASE BACKUP CONTROLFILE TO TRACE將控制文件內容導出到SQL腳本文件。
    ????? < 通過TRACE文件備份的缺點是:沒有歸檔日志的記錄,沒有數據文件脫機記錄,沒有RMAN的備份和拷貝記錄 >
    ?
    ??? 歸檔重做日志的備份:歸檔重做日志是恢復不一致備份的關鍵。不用歸檔日志恢復不一致備份的唯一方法是通過RMAN的增量備份。可以通過下來方法備份歸檔重做日志:
    ?
    ??? 1、操作系統命令;
    ??? 2、RMAN的BACKUP ARCHIVELOG命令;
    ??? 3、RMAN的BACKUP …… PLUS ARCHIVELOG命令;
    ??? 4、RMAN的COPY ARCHIVELOG命令。
    ?

    一致性備份和不一致備份
    ?
    ??? 不一致備份:在數據庫打開或數據庫非正常關閉時對一個或多個數據庫文件進行的備份。
    ?
    ??? 一致性備份:數據庫在“干凈”的關閉后對一個或多個數據文件進行的備份。一致性備份在還原數據文件后不需要進行恢復。
    ?
    ??? 一致性備份是指數據庫備份中的所有數據文件和控制文件具有相同的系統改變號(SYSTEM CHANGE NUMBER SCN)。Oracle通過檢查數據文件頭和控制文件中包含的數據文件頭信息來確定一個備份是否是一致的。建立一致性備份的唯一方式是正常關閉數據庫然后備份。正常關閉數據庫是指使用NORMAL、IMMEDIATE和TRANSACTION選項關閉的數據庫。一致性備份進行數據文件的還原后不需要進行恢復操作,它也是非歸檔模式下唯一的正確備份方式
    ?
    ??? 不一致備份是指數據庫備份中的數據文件和控制文件沒有對應到相同的SCN上。如果數據庫是7×24的,那么除了執行整庫的不一致備份外,沒有其他的選擇。如果數據庫處于歸檔模式下,用戶可以通過不同時間創建的在線數據文件的備份來構建一個整庫備份。
    ?
    ??? 不一致的停機備份:數據庫崩潰或使用SHUTDOWN ABORT方式關閉數據庫后建立的備份。這種類型的備份只有在數據庫是歸檔模式下才是有效的,而且聯機日志和歸檔日志都需要用來保證備份的一致性。
    ?
    ??? 將尚未歸檔聯機重做日志歸檔:當執行了聯機備份或停機的不一致備份,應該馬上歸檔當前的聯機重做日志來保證備份的恢復。如果數據庫是打開的,使用下面的命令切換當前的日志并歸檔:
    ?
    ??? ALTER SYSTEM ARCHIVE LOG CURRENT;
    ?
    ??? 如果數據庫是處于裝載、打開或關閉狀態,可以使用下面的命令歸檔所有的非當前聯機日志:
    ?
    ??? ALTER SYSTEM ARCHIVE LOG ALL;
    ?
    ??? 備份歸檔日志和控制文件:當執行了聯機備份和停機的不一致備份,Oracle推薦備份所有的歸檔日志文件和控制文件。如果沒有備份在備份過程中產生的歸檔日志,則無法將數據庫恢復到一致性狀態。而控制文件中包含了RMAN的備份記錄。
    ?

    聯機備份和停機備份
    ?
    ??? 聯機備份:在數據庫打開的時候備份數據文件。這種備份方式只對歸檔模式有效。在這種情況下,Oracle可以在備份的同時對聯機數據文件進行寫操作。當進行聯機備份時可能存在數據塊不一致的危險。比如,在進行聯機備份的過程中Oracle的寫進程正在對一個數據塊進行更新。在有可能聯機備份的數據塊的上半部分包括舊的數據而下半部分包含新的數據,這種數據塊叫做破裂數據塊(Fractured Block),意味著數據塊中包含的數據是不一致的。如果使用RMAN備份,是Oracle服務器進程而不是操作系統工具在讀取數據文件。服務器進程讀取整個數據塊并比較每個塊的頭和尾來確定數據塊是否是斷裂的。如果發現數據塊是斷裂的,則會重讀該塊,直到得到一個一致的數據塊。
    ?
    ??? 如果使用操作系統方式備份數據塊,則必須使用其他的辦法來處理斷裂塊。首先必須使用ALTER TABLESPACE BEGIN BACKUP語句將聯機表空間處于備份模式。這是Oracle停止在表空間的數據文件上記錄檢查點。當備份完成后通過ALTER TABLESPACE …… END BACKUP或ALTER DATABASE END BACKUP語句來結束備份模式
    ?
    ??? 備份脫機表空間和數據文件:對脫機狀態的表空間和數據文件進行備份。可以使用下面三種選項執行ALTER TABLESPACE OFFLINE語句進行表空間的脫機:NORMAL、TEMPORARY或IMMEDIATE。采用NORMAL方式進行表空間的脫機可以保證備份在恢復的時候不需要進行恢復。采用這種方式,可以備份和恢復表空間而不需要關閉數據庫或執行恢復操作。
    ?

    RMAN和用戶管理備份
    ?
    ??? RMAN備份的存儲格式和用戶管理備份的不同。使用RMAN可以和第三方工具集成。RMAN也可以通過COPY命令生成可用于操作系統命令恢復的備份。
    ?
    ??? 用戶管理備份使用操作系統命令進行數據庫的備份。用戶管理備份和RMAN最大的不同在于用戶比較自己記錄備份了什么和備份在哪里。
    ?

    yangtingkun 發表于:2006.01.09 23:36 ::分類: ( 讀書筆記 ) ::閱讀:(1231次) :: 評論 (0)
    ?
    ?
    ?
    posted on 2008-12-11 21:39 decode360 閱讀(181) 評論(0)  編輯  收藏 所屬分類: 09.Recover

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲三级高清免费| 亚洲AV无码乱码麻豆精品国产| 亚洲不卡av不卡一区二区| 久久久久久亚洲精品中文字幕| 亚洲理论在线观看| 亚洲另类无码专区丝袜| 日韩免费在线中文字幕| 91精品全国免费观看青青| 免费A级毛片无码视频| 成年人视频在线观看免费| heyzo亚洲精品日韩| 亚洲AV成人精品网站在线播放| 亚洲性69影院在线观看| 日韩亚洲人成在线综合| 国产在线观a免费观看| av无码国产在线看免费网站| 日韩视频免费一区二区三区| 成人午夜亚洲精品无码网站| 亚洲精品人成电影网| 国产亚洲美女精品久久久久| 野花香高清视频在线观看免费| 国产免费AV片在线播放唯爱网| 亚洲福利精品一区二区三区| 亚洲AV无码不卡无码| 亚洲精品无AMM毛片| 成人A片产无码免费视频在线观看| 性xxxxx免费视频播放| 免费一级毛片在级播放| 精品无码一区二区三区亚洲桃色| 亚洲国产精品ⅴa在线观看| 18禁在线无遮挡免费观看网站| 成人黄动漫画免费网站视频 | 香港a毛片免费观看 | 亚洲人精品午夜射精日韩| 亚洲不卡中文字幕| A毛片毛片看免费| 四虎www成人影院免费观看| 亚洲AV综合色一区二区三区| 亚洲av无码成人精品区一本二本| 久久国产乱子精品免费女| 四虎影视精品永久免费|