14rn管理的備份和恢復(fù)_第1頁
14rn管理的備份和恢復(fù)_第2頁
14rn管理的備份和恢復(fù)_第3頁
14rn管理的備份和恢復(fù)_第4頁
14rn管理的備份和恢復(fù)_第5頁
已閱讀5頁,還剩123頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、手工備份恢復(fù)的缺點1、產(chǎn)生大量的重做日志2、需要手工記錄大量的信息每個備份文件的位置、備份時間每個數(shù)據(jù)文件的位置等等oracle提供了recovery manager工具,簡稱rman使得我們的備份工作極大的簡化1、備份數(shù)據(jù)文件、歸檔日志、控制文件、spfile2、自動維護備份相關(guān)的元數(shù)據(jù),例如備份文件的名稱、完成備份的scn號3、以數(shù)據(jù)塊為單位進行備份,只備份使用過的數(shù)據(jù)塊4、對備份出來的文件進行壓縮5、自動檢測數(shù)據(jù)塊是否損壞6、支持增量備份等等配置rmanrman的體系結(jié)構(gòu)rman可執(zhí)行程序recover.bsp目標數(shù)據(jù)庫控制文件服務(wù)器進程recovery catalog 數(shù)據(jù)庫服務(wù)器進程

2、通道通道通道m(xù)ml磁盤閃回恢復(fù)區(qū)磁帶庫1、rman要進行備份的數(shù)據(jù)庫叫做目標數(shù)據(jù)庫2、rman是一個客戶端程序,需要建立到目標數(shù)據(jù)庫的客戶端連接,并在目標數(shù)據(jù)庫上創(chuàng)建對應(yīng)的服務(wù)器進程以及session,rman輸入的各個命令,從客戶端傳遞到服務(wù)器,由服務(wù)器進程負責(zé)執(zhí)行,rman只能使用專用服務(wù)器連接,不能使用共享服務(wù)器連接3、備份過程中,rman讀取目標數(shù)據(jù)庫的控制文件,從而獲得目標數(shù)據(jù)庫里包含哪些數(shù)據(jù)文件、歸檔日志文件、以及各個檢查點scn,指導(dǎo)rman完成備份和恢復(fù)的具體操作4、rman獲得了需要備份的文件列表以后,在將數(shù)據(jù)備份到備份介質(zhì)上時,需要建立到這些備份介質(zhì)的通道(channel)

3、。一旦建立通道。數(shù)據(jù)就會從該通道備份到指定的備份介質(zhì)上,每次備份恢復(fù),我們都可以創(chuàng)建多個通道以加快速度。5、rman將通道作為目標數(shù)據(jù)庫上的服務(wù)器進程,會為每個通道都創(chuàng)建一個對應(yīng)的服務(wù)器進程,同時,通道的類型就決定了要將數(shù)據(jù)庫備份到哪種介質(zhì)上,兩種通道類型磁盤通道和磁帶通道磁盤和閃回恢復(fù)區(qū)使用的都是磁盤通道磁帶使用的磁帶通道,需要借助mml(media management library),rman可以把備份的數(shù)據(jù)通過mml傳遞到磁帶上6、rman備份過程中,會產(chǎn)生較多的服務(wù)器進程(rman客戶端以及通道),需要的內(nèi)存較多,對于初始化參數(shù)sessions和processes都要相應(yīng)的增加7、

4、rman信息庫(rman repository),rman備份過程中產(chǎn)生的元數(shù)據(jù),包括備份文件的名稱、路徑、完成備份的時間、檢查點scn等數(shù)據(jù),rman信息庫可以存放在兩個位置目標數(shù)據(jù)庫的控制文件恢復(fù)目錄(recovery catalog)8、控制文件里面存放的記錄分為兩類可刪除的記錄(歸檔日志文件的歷史記錄以及rman備份的元數(shù)據(jù))不可刪除記錄(數(shù)據(jù)文件、聯(lián)機日志文件列表等)如果需要在控制文件中存放新的記錄,則可以刪除那些可刪除部分,從而提供可用空間,注意:如果rman備份的元數(shù)據(jù)被刪除,rman的備份數(shù)據(jù)就失去意義,因此rman備份的元數(shù)據(jù)很重要9、可以通過設(shè)置初始化參數(shù)controlfi

5、le_record_keep_time來決定控制文件中可刪除部分,該參數(shù)默認是7天,表示控制文件始終保持最近7天的可刪除記錄,7天前的備份信息、歸檔日志文件歷史記錄被刪除,如果設(shè)置為0,表示不刪除歷史記錄,那么控制文件的增長將會失控。因此rman的備份周期不能超過7天10、rman提供了恢復(fù)目錄用來存放rman信息庫,rman恢復(fù)目錄由幾個表和存儲過程組成,這些對象存放在一個schema下面,因為表用來存放rman備份的元數(shù)據(jù),因此可以永久的保留下去,而不需要刪除歷史記錄11、rman恢復(fù)目錄是可選的,不是必須的,元數(shù)據(jù)通過目標數(shù)據(jù)庫的控制文件傳遞到恢復(fù)目錄,rman的元數(shù)據(jù)始終都存放一份在目

6、標數(shù)據(jù)庫的控制文件中,不會因為恢復(fù)目錄的存在而刪除,使用rman完成備份以后,會將控制文件的rman元數(shù)據(jù)同步到恢復(fù)目錄,默認情況下,控制文件中的信息保留7天,恢復(fù)目錄永久保留。rman還可以同時為多個目標數(shù)據(jù)庫服務(wù),在同一個恢復(fù)目錄里面,可以保留多個目標數(shù)據(jù)庫的rman元數(shù)據(jù)12、如果使用恢復(fù)目錄,則在使用rman時,除了建立到目標數(shù)據(jù)庫的連接以外,還必須建立到恢復(fù)目錄所在數(shù)據(jù)庫的連接,在恢復(fù)目錄數(shù)據(jù)庫里面創(chuàng)建對應(yīng)的服務(wù)器進程和session13、rman工具本身由兩部分組成rman可執(zhí)行程序:這是一個命令接口,提供了交互的界面,能夠解釋我們的rman命令,返回結(jié)果。在工作中,完成的實質(zhì)性工

7、作很少腳本文件recover.bsp:備份恢復(fù)的實質(zhì)性工作是由目標數(shù)據(jù)庫的程序包完成的,對目標數(shù)據(jù)庫的相應(yīng)程序包的調(diào)用則是由文件recover.bsp實現(xiàn)的bsp文件里面全部是各種pl/sql腳本塊,事實上,rman界面輸入的各種命令,都會被轉(zhuǎn)換成對bsp文件中各個pl/sql塊的調(diào)用,并將相關(guān)的pl/sql塊傳遞到目標數(shù)據(jù)庫上去執(zhí)行,從而完成數(shù)據(jù)庫的備份恢復(fù)操作,bsp才是rman工具的核心。bsp中包含的pl/sql塊,主要調(diào)用了目標數(shù)據(jù)庫中以下兩個程序包dbms_rcvman:用來讀取目標數(shù)據(jù)庫的控制文件信息,并將這些信息傳給rman,從而rman可以獲取要備份的文件列表,以及其他一些信

8、息dbms_backup_restore:完成具體的備份恢復(fù)工作,并在控制文件中寫入備份的元數(shù)據(jù)兩個數(shù)據(jù)包已經(jīng)硬編碼到數(shù)據(jù)庫軟件中,因此數(shù)據(jù)庫在關(guān)閉的情況下也可以使用rman14、rman備份恢復(fù)過程中,可能會需要關(guān)閉和啟動數(shù)據(jù)庫,因此在目標數(shù)據(jù)庫上,必須使用具有sysdba權(quán)限的用戶身份進行連接,如果沒有使用操作系統(tǒng)認證,那么要注意密碼文件不要丟失,密碼文件應(yīng)該定期的備份15、rman備份的最小單位是數(shù)據(jù)塊,不是數(shù)據(jù)文件,rman備份時,總是一個數(shù)據(jù)塊一個數(shù)據(jù)塊的讀取和寫入,rman可以與dbwr進程協(xié)調(diào)一致,如果在備份過程中,發(fā)現(xiàn)是一個臟的數(shù)據(jù)塊,可以等到dbwr進程將內(nèi)存的內(nèi)容刷新到數(shù)據(jù)

9、文件以后,才備份該臟數(shù)據(jù)塊,因此不會出現(xiàn)分離數(shù)據(jù)塊的情況,同時避免了使用begin backup,也就不會產(chǎn)生過多的重做日志,和手工的備份是兩種機制16、rman只會對使用過的數(shù)據(jù)塊進行備份,可以在數(shù)據(jù)庫關(guān)閉時備份,rman備份時,從物理層面來判斷數(shù)據(jù)塊是否被使用,也就是說,只要某個數(shù)據(jù)塊的頭部被格式化過,rman就認為該數(shù)據(jù)塊被使用過,就會備份該數(shù)據(jù)塊,例如我們刪除了一個大表,但是rman的備份不會減小多少,因為刪除表的時候,只是將數(shù)據(jù)字典中的信息進行了刪除,表實際所占用的數(shù)據(jù)塊并沒有被刪除,數(shù)據(jù)塊物理上還有數(shù)據(jù),因此rman還會進行備份??焖匍W回區(qū)(flash recovery area)

10、oracle 10g數(shù)據(jù)庫中,為rman備份文件設(shè)置了默認的路徑,也就是快速閃回區(qū)。該區(qū)域是文件系統(tǒng)上的一個目錄,也可以是asm的某個磁盤組rman的備份可以不存放在這個目錄區(qū)中,但是閃回恢復(fù)區(qū)有很多的好處1、簡化對rman備份文件的管理,這個區(qū)域的文件都是omf文件,文件的名稱和大小都是oracle自動管理2、該區(qū)域的空間管理也是自動進行的當(dāng)rman需要在該區(qū)域創(chuàng)建新的文件,但是空間不足,oracle會自動根據(jù)配置的冗余策略,刪除不再需要的備份文件如果該區(qū)域出現(xiàn)空間壓力,會在告警日志中(alter.ora)記錄該信息,我們可以根據(jù)告警,適當(dāng)?shù)脑黾釉搮^(qū)域的大小、修改rman備份的冗余策略兩個參

11、數(shù),設(shè)置目錄和大小,必須先設(shè)置大小,再設(shè)置目錄只是改變了目錄,已經(jīng)有的文件并沒有移動過來。閃回恢復(fù)區(qū)可以存放rman備份文件、控制文件、聯(lián)機重做日志文件、以及閃回數(shù)據(jù)庫日志文件等oracle設(shè)置了閃回恢復(fù)區(qū),反映了orale 的一個趨勢,數(shù)據(jù)庫自動化管理所有的工作。設(shè)置了閃回恢復(fù)區(qū)以后,我們只需要設(shè)置好冗余策略、控制大小,目錄位置。剩余的工作orale都會自動的搞定。used表示已占用的空間大小的百分比(相對2g)reclaimable表示通過刪除必須要的備份文件所能回收空間的百分比number表示文件的總數(shù)通過database control圖形界面可以更加直觀的查看利用情況。使用confi

12、gure命令配置rman1、rman用戶需要sysdba權(quán)限,我們最好不要使用sys用戶,因此給rman建立一個專用賬號2、連接目標數(shù)據(jù)庫的幾種方式認證部分,本例使用的是操作系統(tǒng)認證,以sys的權(quán)限進行了登陸target,表示連接的是目標數(shù)據(jù)庫,而且本例指的是本機的數(shù)據(jù)庫實例,最終連接到了本機數(shù)據(jù)庫實例orcl中如果是在另外一臺機器上使用rman客戶端,那么可以使用上面的連接方式。rman的選項中,兩個選項經(jīng)常使用1、log2、cmdfilerman所有的輸出都不會顯示在屏幕上,而是顯示在日志文件中參數(shù)append表示在原來的日志基礎(chǔ)上追加日志信息,不是覆蓋。如果rman是晚上自動運行,那么就

13、需要添加log選項,作為一個日志記錄,很重要的參數(shù)。另外一個參數(shù)是cmdfile表示使用rman連接到數(shù)據(jù)庫,然后立即執(zhí)行cmdfile文件里的命令,該命令可以是任何合法的rman命令。上面的兩個參數(shù)是經(jīng)常使用的參數(shù)。rman命令的分類1、獨立的命令在rman提示符下面,輸入一條命令,立即執(zhí)行2、任務(wù)形式的命令以rman 形式執(zhí)行,所有要執(zhí)行的命令都放在兩個之間,執(zhí)行時,run模塊里面的所有命令必須都成功,整個任務(wù)才算成功,其中任何一條命令失敗,則整個任務(wù)失敗并回滾,不會執(zhí)行其中的任何一條命令。從9i開始,可以將一些常用的配置選項設(shè)置為默認值,每次備份時,就不需要再進行這些配置,直接進行備份

14、configure命令進行默認配置,配置的選項包括1、自動備份控制文件2、自動啟動某個類型的通道(磁盤或者磁帶)3、備份的冗余策略4、默認的備份類型:備份集(backup set)or鏡像副本(image copy)5、備份片的大小configure的配置保存在控制文件中,原有的默認配置硬編碼到了rman只可執(zhí)行命令中,因此數(shù)據(jù)庫在沒有mount的時候,show命令都可以查看這些默認值,但是對我們設(shè)置的值,在這里看不見。我們要配置某個選項的時候,不需要記住具體的命令,因為使用show all以后,命令都出來了。通過dbconsole也可以查看具體的選項。1、自動備份控制文件1、每次使用rman

15、進行備份,都會自動備份控制文件和spfile2、修改了數(shù)據(jù)庫結(jié)構(gòu),立刻自動備份控制文件可以配置控制文件備份所在的目錄和文件名字默認使用的是閃回區(qū),使用閃回區(qū)的時候,文件名字使用的omf,即使設(shè)置了文件名字,也不起作用,因此需要改變目錄。c-iiiiiiiiii-yyyymmdd-qq c-dbid-控制文件備份日期-序列號,16禁止00-ff,因此每天的備份數(shù)量不能超過256個數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化??刂莆募]有自動的生成備份。將數(shù)據(jù)庫改為歸檔模式。再次修改表空間的結(jié)構(gòu)??刂莆募詣由?,因此這個功能還是很有意義的。自動啟動某個類型的通道這是rman配置中最重要的地方,也是必須配置的地方通道表示將

16、數(shù)據(jù)復(fù)制到備份介質(zhì)的物理通道,通道類型則說明將數(shù)據(jù)復(fù)制到磁帶還是磁盤,可以定義默認的通道類型默認我們將數(shù)據(jù)備份到磁盤上。我們也可以備份到磁帶上,就愛那個disk替換為sbt,就表示備份到磁帶上。指定同時自動創(chuàng)建多少個通道,上面指定了三個通道,加快了備份速度。上面的配置中說明,默認使用磁盤作為備份介質(zhì),同時啟用三個磁盤通道進行備份。這次備份作業(yè),手工的創(chuàng)建了一個通道,覆蓋了前面指定的默認設(shè)置:磁盤+3個通道。如果是rac,那么可以指定在哪個實例上啟動通道。單實例不需要指定。參數(shù)format,說明該通道生成的備份文件的名稱格式通道生成的備份文件的名稱和格式。%c:備份片的副本數(shù)%d:數(shù)據(jù)庫名稱%d

17、:位于該月的第幾天%m:位于該年的第幾個月%n:數(shù)據(jù)庫名稱,向右填補到最大8個字符%u:一個8個字符的名稱,代表備份集和創(chuàng)建時間%p:該備份集的備份片號,從1開始到創(chuàng)建的文件數(shù)%u:一個唯一的名字%u_%p_%c%s:備份集的編號%t:備份集的時間戳%t:年月日格式(yyyy-mm-dd)參數(shù)maxopenfiles:表示當(dāng)發(fā)出backup命令的時候,一個通道能夠處理的文件的最大個數(shù),默認為8參數(shù)maxpiecesize:創(chuàng)建的備份片(備份出來的物理文件)的大小parms env=:表示將數(shù)據(jù)備份到磁帶上時,到磁帶的通道的一些參數(shù)配置,對于不同的廠商,其parms的值也是不同的上面都是一些和通

18、道有關(guān)的參數(shù)1、默認的設(shè)備類型2、默認啟動的通道數(shù)量3、備份時手工分配通道4、rac環(huán)境中指定在那個實例上啟動通道(connect)5、format指定了生成的文件名和備份路徑6、一個通道最大能夠處理的文件個數(shù)7、備份片的大小8、如果通道是磁帶,那么需要配置一些和廠商有關(guān)的參數(shù)分配了三個通道,因為只有一個數(shù)據(jù)文件,只在通道2上創(chuàng)建了一個備份集,這個備份集包括一個備份片。控制文件和spfile單獨備份到了一個位置,生成了文件刪除了一些我們不需要的配置。每個備份片的大小是20m。備份集(backup set)默認的備份類型是備份集,生成備份集的時候,rman會將不同的數(shù)據(jù)文件里使用過的數(shù)據(jù)取出后,

19、放在同一個物理文件里,也可以放在不同的物理文件里。產(chǎn)生的物理文件叫做備份片(backup piece),備份片的邏輯組合叫做備份集,備份集只是一個名字而已,將物理文件邏輯的組合在一起一般來說,一個通道生成一個備份集,啟動了三個通道,那么就生成三個備份集。如果啟動了備份文件的自動備份,那么控制文件所在的備份文件會單獨的生成一個備份集,不會與數(shù)據(jù)文件所在的備份集合并在一起,另外,如果指定了每個備份集包含的數(shù)據(jù)文件的個數(shù)(filesperset),那么即便只有一個通道,也有可能生成多個備份集。控制文件所在的備份集以操作系統(tǒng)操作系統(tǒng)塊作為最小單位數(shù)據(jù)文件所在的備份集以數(shù)據(jù)庫作為最小單位,因此不能放在一

20、個備份集中如果指定了備份片的大小,比如2g,要備份的數(shù)據(jù)文件占5g,那么在備份集中會生成3個物理文件(3個備份片),其中兩個為2g,一個為1g備份集的數(shù)量通常取決于下面的幾個參數(shù)是否啟用了控制文件的自動備份,啟用則備份集多1個啟用了幾個通道,一個通道一個備份集每個備份集包含的數(shù)據(jù)文件的個數(shù),可能出現(xiàn)一個通道多個備份集的情況備份片的數(shù)量則取決于備份集的數(shù)量和最大備份片的數(shù)量鏡像副本這與手工通過操作系統(tǒng)的復(fù)制命令備份數(shù)據(jù)文件類似。一個數(shù)據(jù)文件生成一個鏡像副本文件,整個復(fù)制過程是rman進行的,rman一個數(shù)據(jù)塊一個數(shù)據(jù)塊的復(fù)制,rman會檢測每一個數(shù)據(jù)塊是否出現(xiàn)損壞,不需要將表空間設(shè)置成為begi

21、n backup,鏡像副本中包含使用過的數(shù)據(jù)塊,也包含從未使用過的數(shù)據(jù)塊。生成鏡像副本的好處在于恢復(fù)速度相對備份集來說,更快一些。備份的冗余策略 recovery window哪些文件必須備份?默認值是7.保留下來的備份,必須能夠?qū)?shù)據(jù)庫恢復(fù)到指定時間之內(nèi)的任意一個時刻,指定這個參數(shù)為7,則表示保留的備份文件能夠?qū)?shù)據(jù)庫恢復(fù)到最近7天中的任何一個時刻。為了能夠?qū)?shù)據(jù)庫恢復(fù)到7天之內(nèi)的任何一個時刻,那么備份文件必須滿足保留7天。這樣當(dāng)我們需要恢復(fù)到7天之內(nèi)的任何一個時刻的時候,找到滿足條件的數(shù)據(jù)文件,配合日志進行恢復(fù)。如果我們只保留了最近4天的備份,那么如果我要恢復(fù)到6天前的一個時刻,那么就不能

22、夠?qū)崿F(xiàn)。 redundancy表示要保留的,能夠?qū)?shù)據(jù)庫恢復(fù)到最新狀態(tài)的完整的備份文件的個數(shù)。根據(jù)策略,不再需要的備份文件則被認為是obsolete。數(shù)據(jù)庫會保存兩套完整的備份。兩個冗余策略配置只能一個生效。使用rman完成備份1、使用rman進行備份以前,首先要做的就是看一下配置,這一步很重要我們希望使用的是備份集。默認使用diskdisk的并行度是3(3個通道),而且是備份集的形式通道的format定義,備份片的大小使用rman進行備份時,我們使用backup命令,該命令可以獨立的放在rman提示符里面,也可以放在run里面,最簡單的命令如下rmanbackup database;1、分配

23、通道,輸入數(shù)據(jù)文件到指定的通道2、在通道上創(chuàng)建備份集和段(備份片)一個備份集上可能有多個段(備份片),這取決于備份片的大小一個通道上也可能有多個備份集,取決于備份片的大小。因為我們啟動了控制文件的自動備份,因此在備份的最后,單獨的生成一個備份集。通過上面的操作提示,我們的到下面的結(jié)果。操作日志具體見backup.log1、分配通道、數(shù)據(jù)文件輸入通道,創(chuàng)建備份集、備份片2、控制文件創(chuàng)建備份集、備份片如果數(shù)據(jù)庫是非歸檔模式,我們需要啟動數(shù)據(jù)庫到mount狀態(tài),然后執(zhí)行backup 命令,因為rman需要讀取目標數(shù)據(jù)庫的控制文件。如果數(shù)據(jù)庫是歸檔模式,數(shù)據(jù)庫在打開時可以備份。依然是分配了三個通道。文

24、件的名字和存放位置發(fā)生了改變。備份片的名字和位置取決于format。等等上面只是備份了一個表空間,而不是整個數(shù)據(jù)庫。只是備份了一個數(shù)據(jù)文件。手工指定多個通道分配了兩個通道,按照指定將1、3、5分配給了c1,將2、4分配給了c2然后備份了控制文件和spfile最后執(zhí)行了一條sql語句將所有的備份片放在同一個目錄下面。format參數(shù)可以在指定通道的時候指定,也可以在backup命令中指定。如果不指定datafile的分配,那么rman會根據(jù)數(shù)據(jù)文件的大小,大致進行分配,盡量保持兩個通道分配的平均。手工分配通道以后,會將默認的通道覆蓋掉,默認通道的分配取決于參數(shù)parallelism備份集支持壓縮

25、,壓縮比例大約是5:1.設(shè)置標記tag為每一個備份集或者鏡像副本文件所取的名稱。在恢復(fù)和list的時候,我們可以非常清楚的知道某個備份的意義。tag標記具體的加在了段上。這一次備份所有的備份片(可能是多個通道生成的多個備份集),都使用同一個tag。默認情況下,rman在備份時總是會檢查數(shù)據(jù)塊是否發(fā)生物理損壞,如果是為了加快備份速度而不希望rman進行數(shù)據(jù)塊的物理檢查時,可以關(guān)閉這個選項。默認情況下,rman不會檢查數(shù)據(jù)塊是否發(fā)生邏輯損壞,backup時可以啟用邏輯損壞檢查。rman進行備份時,只要發(fā)現(xiàn)新的壞塊,就立即停止備份。如果發(fā)現(xiàn)的壞塊是上次已經(jīng)發(fā)現(xiàn)的,則繼續(xù)備份。我們可以設(shè)置maxcor

26、rupt參數(shù)來通知rman,只有當(dāng)發(fā)現(xiàn)的壞塊個數(shù)超過指定的數(shù)量時,才停止備份。這是一個迫不得已的參數(shù)。盡量不要使用。數(shù)據(jù)文件3、5出現(xiàn)的新的壞塊超過10的時候,停止備份。設(shè)置備份集的大?。ㄇ懊嬉呀?jīng)講過設(shè)置備份片的大?。┤绻斎氲奈募目偭砍^備份集的大小,那么在這個通道上創(chuàng)建第二個備份集。如果配置的備份集連一個數(shù)據(jù)文件都容納不了,則會報錯。我們可以不進行實際的數(shù)據(jù)庫備份,只是檢查數(shù)據(jù)文件是否損壞。離線、丟失的數(shù)據(jù)文件備份時,會報錯,我們需要跳過這些數(shù)據(jù)文件,否則備份失敗。離線不能訪問我們可以跳過只讀的表空間。三種類型的都跳過。在備份時,只對那些自上次備份以來新添加的數(shù)據(jù)文件進行備份。在備份時,

27、只對那些在指定的時間內(nèi)沒有備份過的數(shù)據(jù)文件。備份歸檔日志和控制文件1、rman備份歸檔日志時,首先進行一次日志切換,然后對歸檔進行備份2、rman備份過程中如果發(fā)現(xiàn)當(dāng)前歸檔日志損壞,會自動的切換到另外一個歸檔路徑下面(前提是存在多個歸檔路徑)查找該文件的副本3、備份時需要指定要備份哪些歸檔日志備份一天以來所有的歸檔日志。分配的通道和文件名字都遵守配置文件中指定的參數(shù)。這個和數(shù)據(jù)文件備份的區(qū)別就是輸入的文件是日志。從日志序列1開始備份。每一個日志文件都有一個日志序列號。備份所有的歸檔日志。備份歸檔日志的方式有上面的三種1、根據(jù)時間2、根據(jù)日志序列號3、備份所有的備份數(shù)據(jù)庫時,同時備份歸檔日志文件

28、備份數(shù)據(jù)文件時,同時備份歸檔日志文件。備份歸檔日志后,將成功備份的歸檔日志進行刪除。在進行備份之前,如果手工刪除了某些歸檔日志文件,則備份時,由于rman會根據(jù)目標數(shù)據(jù)庫的控制文件里所記錄的歸檔日志文件列表,去找所有的歸檔日志文件,因此會發(fā)生找不到需要備份的歸檔日志文件的現(xiàn)象,rman因此會報錯,備份失敗。只備份那些能夠訪問的歸檔日志文件,跳過那些不能訪問的歸檔日志文件。這是一個很不好的現(xiàn)象,如果發(fā)現(xiàn)歸檔日志丟失,馬上進行數(shù)據(jù)庫的全備份。數(shù)據(jù)文件和歸檔日志可以同時備份,但是不會放在一個備份集里面,至少創(chuàng)建兩個備份集。這點和控制文件的備份很類似。備份當(dāng)前的控制文件。如果控制文件的自動備份設(shè)置為o

29、n,那么任何rman備份都會引發(fā)控制文件和spfile的自動備份,這是一個不錯的參數(shù)。增量備份所謂增量備份,就是只對那些自從上一次備份以來,發(fā)生變化的數(shù)據(jù)塊進行備份。既可以在歸檔模式下面進行增量備份,也可以在非歸檔模式下面進行增量備份。對于非歸檔模式的增量備份,每次備份時,都必須正常關(guān)閉數(shù)據(jù)庫,然后啟動到mount狀態(tài)。1、首先必須要有一個基本備份,包含所有使用過的數(shù)據(jù)塊的備份2、基本備份就是級別0(level=0)的備份,以后所有的增量備份都是基于這個基本備份完成的3、如果rman進行增量備份時,發(fā)現(xiàn)沒有可以參照的基本備份,rman會自動的進行0級備份,忽略我們指定的增量級別備份4、增量備份

30、級別包括1、2、3、4、5一共五個級別,0作為基本級別增量備份分為差異增量備份、累計增量備份差異增量備份:表示每次備份時,只對那些小于等于當(dāng)前級別的備份以來變化過的數(shù)據(jù)塊進行備份。周日零點0級備份周一零點2級備份周二零點2級備份周三零點1級備份周四零點 2級備份周五零點 2級備份周六零點 2級備份1、周日備份所有的數(shù)據(jù)塊2、周一備份=2級別,最近的就是周日,那就是備份周日以來發(fā)生變化的數(shù)據(jù)塊3、周二備份=2,最近的就是周一,那就是備份周一以來發(fā)生變化的數(shù)據(jù)塊4、周三備份=1,最近就是周日,那就是備份周日以來發(fā)生變化的數(shù)據(jù)塊5、周四備份=2,最近的就是周三,那就備份周三以來發(fā)生變化的數(shù)據(jù)塊6、周

31、五只是備份當(dāng)天發(fā)生變化的數(shù)據(jù)7、周六只是備份當(dāng)天發(fā)生變化的數(shù)據(jù)日一二三四五六0221222日0差異備份日一二三四五六0221222日0累計備份,只對小于當(dāng)前級別最近一次備份以來,發(fā)生變化的數(shù)據(jù)塊進行備份。無論是累計還是差異,都進行如下兩步1、向前尋找一個增量備份基點2、備份這個基點以來發(fā)生變化的數(shù)據(jù)塊差異增量:向前尋找基點的方法是=本備份級別累計增量:先前尋找基點的方法是backup database;備份時出錯。刪除備份。配置了通道數(shù)和備份片的大小。alter system set db_recovery_file_dest_size=4g scope=both; 也可以設(shè)置閃回恢復(fù)區(qū)的大小

32、。這個backup database才是一個正確的備份(沒有任何錯誤)沒有找到歸檔日志文件,因為手工刪除了一些歸檔日志文件。控制文件里面記錄的所有的歸檔日志都會進行備份。使用rman進行恢復(fù)1、使用restore命令讀取備份文件里的數(shù)據(jù)塊,根據(jù)數(shù)據(jù)塊所屬的數(shù)據(jù)文件,將這些數(shù)據(jù)塊放回到相應(yīng)的數(shù)據(jù)文件里面去,從而完成還原工作2、使用recover命令把那些從備份以來生成的歸檔日志文件以及聯(lián)機重做日志文件應(yīng)用到還原出來的數(shù)據(jù)文件上,從而把數(shù)據(jù)庫從備份的時間點恢復(fù)到最新的或者指定的時間點。完全恢復(fù)1、分為歸檔和非歸檔模式,如果目標數(shù)據(jù)庫是非歸檔模式,那么數(shù)據(jù)庫需要在mount狀態(tài)進行恢復(fù)2、如果是歸檔

33、模式,只要不是恢復(fù)系統(tǒng)表空間或undo表空間以及控制文件,而是恢復(fù)其他數(shù)據(jù)文件,數(shù)據(jù)庫在打開的狀態(tài)下就可以進行如果控制文件和spfile都丟失,那么必須先還原spfile,再還原控制文件一、啟用了自動備份控制文件,且備份集位于閃回恢復(fù)區(qū)域1、每次備份時,都會自動備份控制文件和spfile,并將這兩種文件放在同一個備份集中。如果我們失去了spfile,則需要還原該文件,那么實例需要啟動到nomount狀態(tài),控制文件可以不打開。2、啟動實例時,我們需要借助一個參數(shù)文件,該參數(shù)文件的內(nèi)容不要求很完整,只要能夠?qū)?shù)據(jù)庫啟動到nomount狀態(tài)即可??刂莆募蛃pfile所在的備份集位于閃回恢復(fù)區(qū),該區(qū)

34、域的文件名是隨機生成的,因此,要從其中恢復(fù)spfile,必須仔細找到spfile所在的最新備份集。因為沒有從控制文件中得到備份信息,因此需要手工的尋找spfile所在備份集的名字。一般控制文件和spfile都在一個備份集中,而且文件比較小,大都比較小,一般在10m以下。找到備份集以后,執(zhí)行命令進行恢復(fù)。在linux下面,出現(xiàn)了一個問題。具體流程就是1、尋找spfile和控制文件所在的備份集,然后恢復(fù)出來。spfile恢復(fù)成功。如果沒有指定spfile的恢復(fù)路徑,默認恢復(fù)到$oracle_home/dbs目錄中去.將兩個控制文件刪除。這個備份集中沒有找到控制文件。反復(fù)的嘗試,終于找到了控制文件所

35、在的備份集。還原控制文件和spfile的步驟都是一樣的1、找到spfile所在的路徑2、找到文件所在的備份集3、使用命令restore spfile from 備份集的路徑名稱4、使用命令restore controlfile from 備份集的路徑名稱分為幾種情況1、啟用了自動備份控制文件,而且備份集位于閃回恢復(fù)區(qū)隨便找一個ora文件將數(shù)據(jù)庫啟動到nomount狀態(tài),因為閃回恢復(fù)區(qū)的文件名字是數(shù)據(jù)庫自己管理的,因此我們只能嘗試著使用每一個備份片,使用restore進行恢復(fù)嘗試。2、啟用了自動備份控制文件,且備份集位于不同的指定路徑中,那么備份集的名字和路徑一定是按照我們指定的format參數(shù)

36、來命名的。我們直接可以使用下面的命令進行恢復(fù)獲得dbid的方式有兩種1、通過自動備份控制文件的名字獲得2、通過mount數(shù)據(jù)庫以后的select dbid from v$database set dbid=1209353873run set controlfile autobackup format for device type disk to c:backup%f; restore spfile from autobackup;run set controlfile autobackup format for device type disk to c:backup%f; restore

37、controlfile from autobackup; restore spfile to pfile c:initoraclr10g.ora from autobackup;/將spfile還原出來,然后轉(zhuǎn)換成為pfile3、沒有啟用自動備份控制文件如果沒有啟用自動備份控制文件,那么每次備份1號數(shù)據(jù)文件的時候,都會強制備份控制文件和spfile,因此還是需要找到備份片,然后使用restore進行還原。restore spfile from c:backup07qwjljsadrestore controlfile from c:backup07qwjljsad前面講了還原數(shù)據(jù)庫的spfil

38、e和控制文件的方式方法非歸檔模式下面的完全恢復(fù)。備份數(shù)據(jù)庫。1、控制文件、聯(lián)機重做日志文件、數(shù)據(jù)文件全都損壞1、數(shù)據(jù)庫啟動到nomount狀態(tài),還原控制文件,因為自動備份啟動,而且備份未放在閃回恢復(fù)區(qū)控制文件里面有這些信息,根據(jù)這些信息,我們能夠找到數(shù)據(jù)文件,歸檔日志文件等備份信息。因此我們需要控制文件備份,即使這些文件備份不是最新的。2、數(shù)據(jù)庫關(guān)閉的情況下刪除控制文件、聯(lián)機重做日志文件、數(shù)據(jù)文件將數(shù)據(jù)庫啟動到nomount狀態(tài)找到bdid控制文件還原到位。將數(shù)據(jù)庫進行mount。還原所有的數(shù)據(jù)文件?;謴?fù)數(shù)據(jù)庫,因為聯(lián)機重做日志文件丟失。所以使用noredo。自上次備份以來的所有數(shù)據(jù)丟失。二、

39、控制文件和聯(lián)機重做日志文件沒有丟失,只有數(shù)據(jù)文件丟失。省略了spfile和控制文件的尋找恢復(fù)。將數(shù)據(jù)庫啟動到mount狀態(tài),使用restore database和recover database進行恢復(fù)即可。如果自上次備份以來,日志文件進行了切換,但是備份時的current日志文件組始終沒有被覆蓋。(間隔時間短、聯(lián)機日志文件大、業(yè)務(wù)量小等原因)。那么在進行恢復(fù)的時候,可以實現(xiàn)無數(shù)據(jù)丟失。當(dāng)前日志組是2.備份表空間users數(shù)據(jù)庫對外提供服務(wù)。在上次備份以來,備份時的current日志文件組還沒有被覆蓋。我們不知道是否被覆蓋。假設(shè)沒有被覆蓋。刪除了users的數(shù)據(jù)文件。啟動數(shù)據(jù)庫到mount狀態(tài)

40、。還原數(shù)據(jù)庫,假設(shè)聯(lián)機日志文件沒有被覆蓋,還能夠配合備份進行數(shù)據(jù)恢復(fù)?;謴?fù)成功??梢灾苯哟蜷_數(shù)據(jù)庫。如果日志文件被覆蓋,那么recover命令會失敗。我們只能進入sqlplus中,發(fā)出如下的命令。sqlrecover database until calcel然后直接輸入cancel,媒體恢復(fù)結(jié)束。數(shù)據(jù)庫可以以resetlogs啟動。三、控制文件沒有損壞、聯(lián)機重做日志文件和數(shù)據(jù)文件損壞將數(shù)據(jù)庫啟動到mount狀態(tài)還原數(shù)據(jù)庫。聯(lián)機日志文件沒有回來。我們在backup database以后,又重新備份了users表空間。使用backup database時的備份集進行users數(shù)據(jù)文件的還原。上面

41、的錯誤在于1、backup database2、backup tablespace users恢復(fù)的時候,users表空間使用的是第二個備份集顯然有問題,我們使用指定的備份集進行還原可以避免這種情況。對于非歸檔模式,這種問題還是比較常見。再次執(zhí)行恢復(fù)。將數(shù)據(jù)庫恢復(fù)到其他目錄下面數(shù)據(jù)文件損壞以后,原來的目錄不能使用了,我們可以使用別的目錄。表空間system和users出現(xiàn)損壞。其余文件都沒有問題。但是非歸檔只能進行全部還原。找到最近一次的全備份的tagtag20090317t082842歸檔模式下面的完全恢復(fù)前提必須具有自備份以來以來所有的歸檔日志,如果缺少歸檔日志文件或者丟失聯(lián)機重做日志文件

42、,則只能進行不完全恢復(fù),如果丟失控制文件,則需要創(chuàng)建控制文件或者按照前面講到的從以前的備份中還原控制文件,顯然后者更好一些。一、非系統(tǒng)表空間損壞,而控制文件和聯(lián)機日志文件沒有損壞數(shù)據(jù)庫中在正常的使用。users表空間損壞。說明一個問題,run內(nèi)所有的操作并沒有作為一個事務(wù)出現(xiàn)。數(shù)據(jù)恢復(fù)回來。如果數(shù)據(jù)庫在關(guān)閉的狀態(tài)下失去數(shù)據(jù)文件。那么將數(shù)據(jù)庫啟動到mount狀態(tài)。然后執(zhí)行上面的操作。如果是數(shù)據(jù)文件損壞,使用下面的操作。系統(tǒng)表空間損壞,控制文件和聯(lián)機重做日志文件沒有損壞。只能將數(shù)據(jù)庫啟動到mount狀態(tài),然后進行恢復(fù)。恢復(fù)成功。所有的數(shù)據(jù)文件丟失,控制文件和聯(lián)機日志文件沒有丟失。不完全恢復(fù)1、不完全恢復(fù)只能在mount下執(zhí)行2、必須使用基于數(shù)據(jù)庫的還原,必須還原所有的數(shù)據(jù)文件有三種方式1、基于時間點的恢復(fù)首先來看日期格式的問題模擬誤刪除了表。需要通過不完全恢復(fù)來找回數(shù)據(jù)?;谌罩拘蛄刑柕牟煌耆謴?fù)如果一個日志文件損壞,那么經(jīng)常使用這種恢復(fù)方式,恢復(fù)一直進行到損壞的日志文件為止?;謴?fù)進程應(yīng)用完56號歸檔日志文件以后就停止?;趕cn號,類似于基于時間點的不完全恢復(fù)oracle提供了一個restore point的概念,可以將restore point理解為某個時間點或者

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論