Oracle數(shù)據(jù)庫備份與恢復(fù)課件_第1頁
Oracle數(shù)據(jù)庫備份與恢復(fù)課件_第2頁
Oracle數(shù)據(jù)庫備份與恢復(fù)課件_第3頁
Oracle數(shù)據(jù)庫備份與恢復(fù)課件_第4頁
Oracle數(shù)據(jù)庫備份與恢復(fù)課件_第5頁
已閱讀5頁,還剩219頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Oracle數(shù)據(jù)庫備份與恢復(fù)Oracle數(shù)據(jù)庫備份與恢復(fù)1本章內(nèi)容1數(shù)據(jù)庫常見故障類型2數(shù)據(jù)庫保護(hù)機制3數(shù)據(jù)庫邏輯備份與恢復(fù)4脫機備份(冷備份)5聯(lián)機備份(熱備份)6使用OMS工具的備份與恢復(fù)向?qū)?數(shù)據(jù)庫恢復(fù)本章內(nèi)容1數(shù)據(jù)庫常見故障類型2DBA的主要職責(zé)之一是備份數(shù)據(jù)庫和在數(shù)據(jù)庫發(fā)生故障時高效、安全地恢復(fù)數(shù)據(jù)庫。備份方法冷備份熱備份邏輯備份(Export/Import)恢復(fù)方法完全恢復(fù)不完全恢復(fù)RMAN備份恢復(fù)等方式DBA的主要職責(zé)之一是備份數(shù)據(jù)庫和在數(shù)據(jù)庫發(fā)生故障時高效、安31數(shù)據(jù)庫常見故障類型系統(tǒng)崩潰或服務(wù)器崩潰用戶錯誤、沖突或者磁盤失效導(dǎo)致的文件丟失SQL語句失敗網(wǎng)絡(luò)故障場地災(zāi)難1數(shù)據(jù)庫常見故障類型系統(tǒng)崩潰或服務(wù)器崩潰42數(shù)據(jù)庫保護(hù)機制Oracle數(shù)據(jù)庫保護(hù)機制:數(shù)據(jù)庫備份和事務(wù)日志。

Oracle數(shù)據(jù)庫事務(wù)日志數(shù)據(jù)庫備份2數(shù)據(jù)庫保護(hù)機制Oracle數(shù)據(jù)庫保護(hù)機制:數(shù)據(jù)庫備份和5數(shù)據(jù)庫備份一般來說,數(shù)據(jù)庫備份可以分為物理備份和邏輯備份。物理備份可分為脫機備份和聯(lián)機備份。脫機備份又稱為冷備份,只能在數(shù)據(jù)庫關(guān)閉后進(jìn)行備份;聯(lián)機備份又稱為熱備份,數(shù)據(jù)庫沒有關(guān)閉,用戶還可以使用。邏輯備份是使用Export實用程序備份,當(dāng)數(shù)據(jù)庫出現(xiàn)故障,可以使用Oracle的Import實用程序恢復(fù)數(shù)據(jù)庫。數(shù)據(jù)庫備份6事務(wù)日志數(shù)據(jù)庫的事務(wù)日志(TransactionLog)是一組操作系統(tǒng)文件,它記錄了提交事務(wù)所做的數(shù)據(jù)庫修改。日志主要是保護(hù)數(shù)據(jù)庫,在數(shù)據(jù)庫出現(xiàn)故障時執(zhí)行恢復(fù)。為了防止日志本身的故障,Oracle允許在不同的物理磁盤上維護(hù)兩個或多個日志的副本。事務(wù)日志7舉例,磁盤失效后如何保護(hù)和恢復(fù)數(shù)據(jù)庫。(1)正常工作時,每天晚上備份數(shù)據(jù)庫,包含所有數(shù)據(jù)文件。(2)某一天,包含數(shù)據(jù)庫的某個數(shù)據(jù)文件的磁盤壞了,因此一部分?jǐn)?shù)據(jù)不可用(做了磁盤容錯的情況例外),因此需要執(zhí)行數(shù)據(jù)庫恢復(fù)。(3)把有問題的磁盤更換為新的磁盤。(4)將最近的數(shù)據(jù)庫備份存入新的磁盤中以恢復(fù)丟失的數(shù)據(jù)文件,但是,恢復(fù)的數(shù)據(jù)文件丟失了備份發(fā)生后所提交的事務(wù)工作。(5)最后,執(zhí)行數(shù)據(jù)庫恢復(fù)工作。在恢復(fù)過程中,Oracle讀取事務(wù)日志,把過去提交的事務(wù)工作重做,使數(shù)據(jù)庫文件成為當(dāng)前文件。(6)數(shù)據(jù)庫恢復(fù)后,打開數(shù)據(jù),供應(yīng)用程序使用。舉例,磁盤失效后如何保護(hù)和恢復(fù)數(shù)據(jù)庫。8ORACLE數(shù)據(jù)庫兩種運行方式歸檔方式(ARCHIVELOG),歸檔方式的目的是當(dāng)數(shù)據(jù)庫發(fā)生故障時最大限度恢復(fù)數(shù)據(jù)庫,可以保證不丟失任何已提交的數(shù)據(jù)。不歸檔方式(NOARCHIVELOG),只能恢復(fù)數(shù)據(jù)庫到最近的回收點(冷備份或是邏輯備份)。ORACLE數(shù)據(jù)庫兩種運行方式93數(shù)據(jù)庫邏輯備份與恢復(fù)

數(shù)據(jù)庫邏輯備份:讀一個數(shù)據(jù)庫記錄集,并以O(shè)racle提供的內(nèi)部格式寫入一個二進(jìn)制文件中。這些記錄的讀出與其物理位置無關(guān)。在Oracle中,Export實用程序執(zhí)行邏輯備份。使用Oracle的Import實用程序執(zhí)行數(shù)據(jù)庫恢復(fù)。當(dāng)用戶導(dǎo)入導(dǎo)出時,有相應(yīng)的權(quán)限要求。在OEM中,當(dāng)用戶連接到OracleManagementServer時,可以使用圖形界面執(zhí)行數(shù)據(jù)庫的導(dǎo)入和導(dǎo)出。3數(shù)據(jù)庫邏輯備份與恢復(fù)數(shù)據(jù)庫邏輯備份:讀一個數(shù)據(jù)庫記錄103.1導(dǎo)出Oracle的實用程序Export用來讀取一個數(shù)據(jù)庫,并把輸入寫入一個稱為導(dǎo)出轉(zhuǎn)儲文件(exportdumpfile)的二進(jìn)制文件。

EXPUSERID=username/passwordPARAMETER=(value1,value2,..)可以通過如下命令來顯示參數(shù)EXPHELP=Y3.1導(dǎo)出Oracle的實用程序Export用來讀取一11導(dǎo)出方式:Full方式、User方式和Table方式。

完全數(shù)據(jù)庫導(dǎo)出expsystem/managerfull=Yconstraints=Yfile=f:\backup\test.dmp

導(dǎo)出用戶表expuser1/passwordtables=employeesfile=f:\backup\test.dmpexpuser1/passwordtables=(employees,jobs)file=f:\backup\test.dmp

導(dǎo)出用戶模式expuser1/passwordowner=user1file=test.dmp

導(dǎo)出方式:Full方式、User方式和Table方式。12一旦數(shù)據(jù)已經(jīng)導(dǎo)出,就可以通過Oracle的Import實用程序執(zhí)行導(dǎo)入,來恢復(fù)數(shù)據(jù)庫。Import實用程序讀取由Export創(chuàng)建的二進(jìn)制導(dǎo)出轉(zhuǎn)儲文件并執(zhí)行其中的命令。

IMPUSERID=username/passwordPARAMETER=(value1,value2,..)可以通過如下命令來顯示參數(shù)

IMPHELP=Y導(dǎo)出的數(shù)據(jù)可以導(dǎo)入到不同的數(shù)據(jù)庫中,甚至可以導(dǎo)入到與生成導(dǎo)出轉(zhuǎn)儲文件不同的模式中;可以導(dǎo)入全部或部分已導(dǎo)出的數(shù)據(jù)。3.2導(dǎo)入一旦數(shù)據(jù)已經(jīng)導(dǎo)出,就可以通過Oracle的Import實用程13導(dǎo)入用戶自身所擁有的表

IMPsystem/ora456tables=studentfile=f:\backuptest.dmp IMPsystem/ora456tables=(student,course)file=f:\backuptest.dmp導(dǎo)入用戶模式

impsystem/managerFROMUSER=scottTOUSER=systemtables=deptfile=f:\backup\test.dmp導(dǎo)入用戶自身所擁有的表14案例1,導(dǎo)出數(shù)據(jù)庫表,用戶誤操作刪除表,執(zhí)行導(dǎo)入表,恢復(fù)數(shù)據(jù)庫(1)TEST2數(shù)據(jù)庫(System用戶,口令為ora456),導(dǎo)出表student3.3邏輯備份案例案例1,導(dǎo)出數(shù)據(jù)庫表,用戶誤操作刪除表,執(zhí)行導(dǎo)入表,恢復(fù)數(shù)據(jù)15Oracle數(shù)據(jù)庫備份與恢復(fù)課件16(2)刪除表student中的數(shù)據(jù),或者將整個表刪除,數(shù)據(jù)已經(jīng)不存在,或者表被刪除

(2)刪除表student中的數(shù)據(jù),或者將整個表刪除,數(shù)據(jù)已17(3)導(dǎo)入表student,恢復(fù)數(shù)據(jù)庫(3)導(dǎo)入表student,恢復(fù)數(shù)據(jù)庫18(4)查詢表和數(shù)據(jù),驗證導(dǎo)入是否成功(4)查詢表和數(shù)據(jù),驗證導(dǎo)入是否成功19案例2,導(dǎo)入其他方案的表。將Scott的表dept導(dǎo)入System(1)System下沒有Scott的表dept,注意,這不同與查詢時使用scott.dept案例2,導(dǎo)入其他方案的表。將Scott的表dept導(dǎo)入Sys20Oracle數(shù)據(jù)庫備份與恢復(fù)課件21(2)在system下,導(dǎo)出Scott的表dept,導(dǎo)出文件test2.dmp(2)在system下,導(dǎo)出Scott的表dept,導(dǎo)出文件22(3)將Scott的表dept導(dǎo)入到System中(4)再次執(zhí)行步驟(1)中的查詢,驗證導(dǎo)入成功

(3)將Scott的表dept導(dǎo)入到System中234脫機備份(冷備份)脫機備份是最簡單的一種數(shù)據(jù)庫備份方式,在數(shù)據(jù)庫關(guān)閉后進(jìn)行備份,用戶不能訪問數(shù)據(jù)庫,是一種完全備份。

脫機備份一般需要備份如下文件:(1)所有數(shù)據(jù)文件(2)所有控制文件(3)所有聯(lián)機重做日志(4)init.ora文件4脫機備份(冷備份)脫機備份是最簡單的一種數(shù)據(jù)庫備份方式24脫機備份步驟(1)以DBA或特權(quán)用戶登錄,對于需要的備份文件,用戶也可通過下列SQL語句來了解數(shù)據(jù)文件、重演日志文件及控制文件的相應(yīng)位置及名稱。SELECT*FROMV$LOGFILE;SELECT*FROMV$DBFILE;SELECT*FROMV$CONTROLFILE;脫機備份步驟25(2)關(guān)閉數(shù)據(jù)庫SHUTDOWNNORMAL;

或者執(zhí)行SHUTDOWNIMMEDIATE;(2)關(guān)閉數(shù)據(jù)庫26(3)復(fù)制數(shù)據(jù)文件用拷貝命令備份全部的數(shù)據(jù)文件、重做日志文件、控制文件、初始化參數(shù)文件等。簡單的處理方法是將數(shù)據(jù)庫所在路徑下的文件全部復(fù)制備份。在下面實驗案例中所用數(shù)據(jù)庫TEST2的目錄是:f:\oracle\oradata\test2(3)復(fù)制數(shù)據(jù)文件27(4)重新啟動數(shù)據(jù)庫STARTUP;(4)重新啟動數(shù)據(jù)庫28脫機備份的優(yōu)點:只需要拷貝文件,速度比較快。將文件拷貝回去,數(shù)據(jù)庫就可以恢復(fù)到某個時間點。若結(jié)合數(shù)據(jù)庫歸檔模式可以很好地恢復(fù)數(shù)據(jù)庫。維護(hù)量相對較少,但安全性相對較高。脫機備份的優(yōu)點:29脫機備份的缺點:脫機備份時,數(shù)據(jù)庫必須關(guān)閉。單獨使用脫機備份,數(shù)據(jù)庫只能基于某一時間點恢復(fù)。若磁盤空間有限,使用磁帶等外設(shè)時速度較慢。脫機備份不能按表或用戶恢復(fù)。脫機備份的缺點:30案例,脫機備份與不完全數(shù)據(jù)庫恢復(fù)脫機備份數(shù)據(jù)庫相應(yīng)文件,由于誤操作,刪除了users表空間對象STUDENT表,將備份的數(shù)據(jù)文件復(fù)制到原來的位置,恢復(fù)數(shù)據(jù)庫到執(zhí)行誤操作前的狀態(tài)。以SYSDBA登錄。數(shù)據(jù)字典DBA_TABLES可以查詢表所在的表空間。案例,脫機備份與不完全數(shù)據(jù)庫恢復(fù)31(1)對象STUDENT,有兩條記錄(1)對象STUDENT,有兩條記錄32(2)脫機備份

shutdownimmediate;備份數(shù)據(jù)文件user01.dbf,控制文件,重做日志文件,或者直接將f:\oracle\oradata\test2目錄下的文件全部備份。 備份結(jié)束重啟數(shù)據(jù)庫startup;(2)脫機備份33(3)對象student增加一條記錄

insertintosystem.studentvalues(‘1003’,’liming’,20,’CS’);(3)對象student增加一條記錄34(4)模擬誤操作,刪除了表STUDENT

droptablesystem.student;commit;(4)模擬誤操作,刪除了表STUDENT35(5)查詢對象STUDENT,返回錯誤信息(5)查詢對象STUDENT,返回錯誤信息36(6)關(guān)閉數(shù)據(jù)庫 shutdownimmediate;(7)復(fù)制原先備份的數(shù)據(jù)文件,控制文件,重做日志等到原來目錄下,f:\oracle\oradata\test2(8)startupmount;(6)關(guān)閉數(shù)據(jù)庫37(9)執(zhí)行基于取消的恢復(fù),recoverdatabaseuntilcancel(9)執(zhí)行基于取消的恢復(fù),recoverdatabase38(10)以RESETLOGS方式打開數(shù)據(jù)庫(10)以RESETLOGS方式打開數(shù)據(jù)庫39(11)查詢對象STUDENT,只有脫機備份的兩條記錄,備份后增加的記錄沒有恢復(fù)(11)查詢對象STUDENT,只有脫機備份的兩條記錄,備份405聯(lián)機備份(熱備份)聯(lián)機備份是在數(shù)據(jù)庫運行時進(jìn)行的備份,用戶仍然可以訪問數(shù)據(jù)庫,一些關(guān)鍵行業(yè)的數(shù)據(jù)必須運行在7*24模式下,并不適合執(zhí)行脫機備份,必須使用聯(lián)機備份。聯(lián)機備份要求數(shù)據(jù)庫運行在歸檔(archivelog)模式下,該方式下,聯(lián)機重做日志被歸檔,數(shù)據(jù)庫中所有事務(wù)的完整記錄由Oracle以循環(huán)方式寫入聯(lián)機重做日志文件。聯(lián)機備份一般備份數(shù)據(jù)文件、控制文件和日志文件。

5聯(lián)機備份(熱備份)聯(lián)機備份是在數(shù)據(jù)庫運行時進(jìn)行的備份,41(1)備份所有數(shù)據(jù)文件(2)備份所有歸檔的重做日志文件(3)備份一個控制文件(4)檢查發(fā)生故障的數(shù)據(jù)文件,恢復(fù)數(shù)據(jù)文件(1)備份所有數(shù)據(jù)文件42聯(lián)機備份的優(yōu)點:可在表空間或數(shù)據(jù)文件級備份,備份時間短。備份時數(shù)據(jù)庫仍可使用??蛇_(dá)到秒級恢復(fù)(恢復(fù)到某一時間點上)??蓪缀跛袛?shù)據(jù)庫實體作恢復(fù)?;謴?fù)快速,大多數(shù)情況下恢復(fù)不需要關(guān)閉數(shù)據(jù)庫。聯(lián)機備份的優(yōu)點:43聯(lián)機備份的缺點:不能出錯,否則后果嚴(yán)重。若聯(lián)機備份不成功,所得結(jié)果不可用于時間點的恢復(fù)。因難于維護(hù),所以要特別小心,不允許“以失敗而告終”。聯(lián)機備份的缺點:44案例,聯(lián)機備份與完全數(shù)據(jù)庫恢復(fù)在表空間APPL_DATA上建立對象COURSE,首先執(zhí)行聯(lián)機備份,在COURSE表上加入記錄,然后刪除數(shù)據(jù)文件APPL_DATA,最后執(zhí)行恢復(fù),數(shù)據(jù)文件重新聯(lián)機,驗證恢復(fù)成功。案例,聯(lián)機備份與完全數(shù)據(jù)庫恢復(fù)45(1)在歸檔模式下,在表空間APPL_DATA上建立表COURSE,并插入兩條記錄(1)在歸檔模式下,在表空間APPL_DATA上建立表COU46(2)切換日志,查看v$log確認(rèn)當(dāng)前日志已經(jīng)更改 altersystemswitchlogfile;(3)備份控制文件(在本案例中可以不做) alterdatabasebackupcontrolfileto′f:\backup\backup.ctl′;(4)備份數(shù)據(jù)文件 先將表空間APPL_DATA設(shè)置為備份模式 altertablespaceappl_databeginbackup; 拷貝表空間的數(shù)據(jù)文件APPL_DATA.ORA,其他數(shù)據(jù)文件不變。 copyf:\oracle\oradata\test2\appl_data.oraf:\backup\appl_data.ora 將表空間APPL_DATA設(shè)置為正常模式 altertablespaceappl_dataendbackup;(2)切換日志,查看v$log確認(rèn)當(dāng)前日志已經(jīng)更改47(5)在COURSE表上添加記錄

insertintocoursevalues(′30′,′database′,′20′,4);(5)在COURSE表上添加記錄48(6)使表空間脫機,刪除數(shù)據(jù)文件APPL_DATA.ORA

altertablespaceappl_dataoffline; delf:\oracle\oradata\test2\appl_data.ora(6)使表空間脫機,刪除數(shù)據(jù)文件APPL_DATA.ORA49(7)將表空間聯(lián)機,出現(xiàn)錯誤,提示恢復(fù)數(shù)據(jù)文件(7)將表空間聯(lián)機,出現(xiàn)錯誤,提示恢復(fù)數(shù)據(jù)文件50(8)將備份的數(shù)據(jù)文件復(fù)制到原來所在位置,執(zhí)行數(shù)據(jù)文件恢復(fù)。 copyf:\backup\appl_data.oraf:\oracle\oradata\test2\appl_data.ora然后,執(zhí)行數(shù)據(jù)文件恢復(fù)命令,本例中文件號為11 recoverdatafile11;(8)將備份的數(shù)據(jù)文件復(fù)制到原來所在位置,執(zhí)行數(shù)據(jù)文件恢復(fù)。51Oracle數(shù)據(jù)庫備份與恢復(fù)課件52(9)聯(lián)機表空間(9)聯(lián)機表空間53(10)查詢對象COURSE表,確認(rèn)聯(lián)機備份恢復(fù)成功,聯(lián)機備份前的數(shù)據(jù)和備份后新增加的數(shù)據(jù)都存在(10)查詢對象COURSE表,確認(rèn)聯(lián)機備份恢復(fù)成功,聯(lián)機備546使用OMS工具的備份與恢復(fù)向?qū)?使用OMS工具的備份與恢復(fù)向?qū)?56.1Oracle管理服務(wù)器的配置使用備份向?qū)崿F(xiàn)聯(lián)機備份與恢復(fù),需要登錄到Oracle管理服務(wù)器OMS。需要先配置Oracle管理服務(wù)器,選擇【開始】->【程序】->【OraHome90】->【ConfigurationandMigrationTools】->【EnterpriseManagerConfigurationAssistant】,進(jìn)入OMS的配置步驟。進(jìn)入OMS后,為了保證備份向?qū)У恼_執(zhí)行,應(yīng)做如下工作:6.1Oracle管理服務(wù)器的配置使用備份向?qū)崿F(xiàn)聯(lián)機備56(1)檢查SYS和SYSTEM用戶權(quán)限,SYSTEM用戶在獨立模式下具有SYSDBA權(quán)限和SYSOPER權(quán)限,在管理服務(wù)器模式下不具備SYSDBA權(quán)限,不能啟動和關(guān)閉數(shù)據(jù)庫,需要人工授予SYSOPER和SYSDBA權(quán)限,同時應(yīng)給SYSTEM用戶添加角色EXP_FULL_DATABASE和角色I(xiàn)MP_FULL_DATABASE,確保數(shù)據(jù)庫備份與恢復(fù)操作正常。SYS用戶無論是獨立模式還是管理服務(wù)器模式都有SYSOPER和SYSDBA權(quán)限。(1)檢查SYS和SYSTEM用戶權(quán)限,SYSTEM用戶在獨57(2)檢查操作系統(tǒng)用戶是否作為批處理作業(yè)登錄。選擇【開始】->【程序】->【管理工具】->【本地安全策略】,選擇用戶權(quán)限分配,選擇作為批處理作業(yè)登錄,雙擊打開后添加Administrator用戶。(3)檢查節(jié)點和數(shù)據(jù)庫的首選證明,設(shè)置節(jié)點的首先身份證明中的用戶名為Administrator,并輸入口令。設(shè)置數(shù)據(jù)庫的首先身份證明的用戶為SYS,輸入口令,選擇以SYSDBA角色。(2)檢查操作系統(tǒng)用戶是否作為批處理作業(yè)登錄。選擇【開始】-58第一次登錄管理服務(wù)器OMS,管理員為SYSMAN,缺省口令為OEM_TEMP初次登錄,系統(tǒng)將提示更改SYSMAN口令。如果系統(tǒng)提示連接驗證錯誤VTK-1000,查看【管理工具】->【服務(wù)】->【OracleOraHome90ManagementServer】是否啟動,若沒有啟動,應(yīng)手動啟動該服務(wù)。6.2使用OMS備份向?qū)У谝淮蔚卿浌芾矸?wù)器OMS,管理員為SYSMAN,缺省口令為59Oracle數(shù)據(jù)庫備份與恢復(fù)課件60Oracle數(shù)據(jù)庫備份與恢復(fù)課件611.預(yù)定義備份策略1.預(yù)定義備份策略62Oracle數(shù)據(jù)庫備份與恢復(fù)課件63首先選擇預(yù)定義備份策略,單擊下一步按鈕,出現(xiàn)“備份頻率”對話框首先選擇預(yù)定義備份策略,單擊下一步按鈕,出現(xiàn)“備份頻率”對話64Oracle數(shù)據(jù)庫備份與恢復(fù)課件65Oracle數(shù)據(jù)庫備份與恢復(fù)課件66Oracle數(shù)據(jù)庫備份與恢復(fù)課件67Oracle數(shù)據(jù)庫備份與恢復(fù)課件682.自定義備份策略打開備份向?qū)В呗赃x擇自定義備份策略,出現(xiàn)“備份選擇”對話框。2.自定義備份策略69為了較快地看到備份結(jié)果,我們選擇備份表空間,這是數(shù)據(jù)庫子集的備份。為了較快地看到備份結(jié)果,我們選擇備份表空間,這是數(shù)據(jù)庫子集的70Oracle數(shù)據(jù)庫備份與恢復(fù)課件71Oracle數(shù)據(jù)庫備份與恢復(fù)課件72Oracle數(shù)據(jù)庫備份與恢復(fù)課件73Oracle數(shù)據(jù)庫備份與恢復(fù)課件74Oracle數(shù)據(jù)庫備份與恢復(fù)課件75Oracle數(shù)據(jù)庫備份與恢復(fù)課件76Oracle數(shù)據(jù)庫備份與恢復(fù)課件77查看“作業(yè)”節(jié)點,在活動項中可以看到備份0053已經(jīng)啟動,等待一會兒切換到歷史記錄,可以看到備份0053已經(jīng)執(zhí)行完成。查看“作業(yè)”節(jié)點,在活動項中可以看到備份0053已經(jīng)啟動,等78選擇備份0053,右鍵選擇“查看作業(yè)”,可以顯示備份的詳細(xì)信息。選擇備份0053,右鍵選擇“查看作業(yè)”,可以顯示備份的詳細(xì)信79選擇狀態(tài)已完成,單擊“顯示輸出”按鈕,得到執(zhí)行備份的腳本代碼。

選擇狀態(tài)已完成,單擊“顯示輸出”按鈕,得到執(zhí)行備份的腳本代碼80向?qū)Щ謴?fù)可以選擇數(shù)據(jù)庫恢復(fù)表空間恢復(fù)數(shù)據(jù)文件恢復(fù)三種恢復(fù)向?qū)袆e目標(biāo)數(shù)據(jù)庫的狀態(tài)(歸檔日志,無歸檔日志,已裝載沒有打開,裝載并打開)來禁止選項。

6.3使用OMS恢復(fù)向?qū)驅(qū)Щ謴?fù)可以選擇6.3使用OMS恢復(fù)向?qū)?1恢復(fù)整個數(shù)據(jù)庫時,將恢復(fù)屬于該數(shù)據(jù)庫的所有數(shù)據(jù)文件,要求數(shù)據(jù)庫只處于裝載狀態(tài),即NOMOUNT方式啟動。表空間恢復(fù)將恢復(fù)數(shù)據(jù)庫的一個子集合。對選定的表空間進(jìn)行恢復(fù),一般要求數(shù)據(jù)庫運行在歸檔模式下。數(shù)據(jù)文件恢復(fù)將恢復(fù)單個數(shù)據(jù)文件,數(shù)據(jù)文件恢復(fù)不如表空間恢復(fù)那樣常用,一般要求數(shù)據(jù)庫運行在歸檔模式下恢復(fù)整個數(shù)據(jù)庫時,將恢復(fù)屬于該數(shù)據(jù)庫的所有數(shù)據(jù)文件,要求數(shù)據(jù)82登錄到管理服務(wù)器,選擇數(shù)據(jù)庫,選擇【工具】->【數(shù)據(jù)庫向?qū)А?>【備份管理】->【恢復(fù)】,起用恢復(fù)向?qū)?。如果不能啟動OMS,應(yīng)查看【管理工具】->【服務(wù)】->【OracleOraHome90ManagementServer】是否啟動,如果沒有啟動,先啟動該服務(wù)。

登錄到管理服務(wù)器,選擇數(shù)據(jù)庫,選擇【工具】->【數(shù)據(jù)庫向?qū)А?3Oracle數(shù)據(jù)庫備份與恢復(fù)課件84Oracle數(shù)據(jù)庫備份與恢復(fù)課件85Oracle數(shù)據(jù)庫備份與恢復(fù)課件86Oracle數(shù)據(jù)庫備份與恢復(fù)課件87Oracle數(shù)據(jù)庫備份與恢復(fù)課件88Oracle數(shù)據(jù)庫備份與恢復(fù)課件89Oracle數(shù)據(jù)庫備份與恢復(fù)課件90若要查看執(zhí)行情況,可以在OMS的節(jié)點“作業(yè)”中,選擇歷史記錄確認(rèn)備份和恢復(fù)情況。若要查看執(zhí)行情況,可以在OMS的節(jié)點“作業(yè)”中,選擇歷史記錄915.7數(shù)據(jù)庫恢復(fù)恢復(fù)可以分為完全恢復(fù)和不完全恢復(fù)

完全數(shù)據(jù)庫恢復(fù)是恢復(fù)到故障發(fā)生前的狀態(tài),所有已經(jīng)提交的操作都進(jìn)行恢復(fù),確保數(shù)據(jù)庫不丟失任何數(shù)據(jù),完全恢復(fù)只用于歸檔模式。不完全數(shù)據(jù)庫恢復(fù)是將數(shù)據(jù)庫恢復(fù)到備份點與介質(zhì)失敗點之間某個時刻的狀態(tài),并不是恢復(fù)所有提交的操作,不完全恢復(fù)可能丟失部分?jǐn)?shù)據(jù)。任何類型的恢復(fù)包括兩個階段:前滾階段和回滾(回退)階段。

5.7數(shù)據(jù)庫恢復(fù)恢復(fù)可以分為完全恢復(fù)和不完全恢復(fù)92前滾階段在前滾恢復(fù)階段(roll-forwardrecovery),恢復(fù)管理器應(yīng)用必要的事務(wù)日志組“重做”(REDO)所有提交的不在數(shù)據(jù)庫數(shù)據(jù)文件中的事務(wù)。前滾階段93回滾階段在前滾恢復(fù)后,Oracle必須執(zhí)行回滾恢復(fù)(roll-backrecovery)。由于一些未完成的事務(wù)對數(shù)據(jù)庫的修改信息已經(jīng)提交到數(shù)據(jù)庫,為保證數(shù)據(jù)庫的一致性,需要清除這些事務(wù)對數(shù)據(jù)庫的修改,數(shù)據(jù)庫應(yīng)執(zhí)行回滾操作(UNDO),強制撤銷這些未完成事務(wù)。回滾階段94前滾和回滾的執(zhí)行除了管理員或應(yīng)用程序調(diào)用外,執(zhí)行前滾操縱還是回滾操作與檢查點的出現(xiàn)相關(guān)

12345檢查點系統(tǒng)故障上一檢查點無前滾回滾前滾回滾故障時需要的動作前滾和回滾的執(zhí)行除了管理員或應(yīng)用程序調(diào)用外,執(zhí)行前滾操縱還是95數(shù)據(jù)庫備份日志回退段控制文件7.1恢復(fù)數(shù)據(jù)庫所使用的結(jié)構(gòu)數(shù)據(jù)庫備份7.1恢復(fù)數(shù)據(jù)庫所使用的結(jié)構(gòu)96當(dāng)數(shù)據(jù)庫實例意外地(如掉電、后臺進(jìn)程故障等)或預(yù)料地(發(fā)出shutdownabort語句)終止時出現(xiàn)實例故障,此時需要實例恢復(fù)。實例恢復(fù)將數(shù)據(jù)庫恢復(fù)到故障前的事務(wù)一致狀態(tài)。如果聯(lián)機備份時出現(xiàn)實例故障,則需要介質(zhì)恢復(fù)。在其它情況下,Oracle在下次數(shù)據(jù)庫起動時(對新實例裝配和打開),自動地執(zhí)行實例恢復(fù)。7.2實例故障的一致性恢復(fù)當(dāng)數(shù)據(jù)庫實例意外地(如掉電、后臺進(jìn)程故障等)或預(yù)料地(發(fā)出s97恢復(fù)步驟處理(1)為恢復(fù)數(shù)據(jù)文件中沒有記錄的數(shù)據(jù),進(jìn)行前滾。數(shù)據(jù)記錄在聯(lián)機日志中,包括對回滾段的內(nèi)容恢復(fù)。(2)回滾未提交的事務(wù)。(3)釋放在故障時正在處理事務(wù)所持有的資源。(4)解決在故障時執(zhí)行的任何懸而未決的分布事務(wù)?;謴?fù)步驟處理98電源失效和軟件問題是引起一臺Oracle數(shù)據(jù)庫服務(wù)器出現(xiàn)意外崩潰的常見原因。當(dāng)系統(tǒng)崩潰時,數(shù)據(jù)庫服務(wù)器沒有完全關(guān)閉。在系統(tǒng)崩潰期間,Oracle沒有時間執(zhí)行數(shù)據(jù)庫檢查點以確保緩存中被修改的數(shù)據(jù)塊安全地寫回到數(shù)據(jù)文件中。系統(tǒng)崩潰不會永久損壞任何一個數(shù)據(jù)庫的數(shù)據(jù)文件。

7.3崩潰恢復(fù)電源失效和軟件問題是引起一臺Oracle數(shù)據(jù)庫服務(wù)器出現(xiàn)意外99介質(zhì)故障是當(dāng)一個文件、一個文件的部分、磁盤不能讀或不能寫時出現(xiàn)的故障,介質(zhì)故障后,必須執(zhí)行一個介質(zhì)恢復(fù)操作。在一個典型的介質(zhì)恢復(fù)期間,必須完成以下幾步操作:(1)修理所有的硬件問題(2)重建丟失的數(shù)據(jù)文件(3)使用必要的事務(wù)日志組,完成恢復(fù)操作(4)執(zhí)行一個適當(dāng)?shù)慕橘|(zhì)恢復(fù)7.4介質(zhì)恢復(fù)介質(zhì)故障是當(dāng)一個文件、一個文件的部分、磁盤不能讀或不能寫時出100完全恢復(fù)是一種恢復(fù)所有提交事務(wù)的操作,恢復(fù)全部丟失的修改。完全恢復(fù)包括數(shù)據(jù)庫恢復(fù)、表空間恢復(fù)和數(shù)據(jù)文件恢復(fù)。7.5完全恢復(fù)完全恢復(fù)是一種恢復(fù)所有提交事務(wù)的操作,恢復(fù)全部丟失的修改。7101數(shù)據(jù)庫恢復(fù)數(shù)據(jù)庫恢復(fù)是恢復(fù)數(shù)據(jù)庫中所有丟失工作的最簡單的方法,用于恢復(fù)數(shù)據(jù)庫的全部數(shù)據(jù)文件,恢復(fù)管理器識別受損的數(shù)據(jù)文件并且使用恢復(fù)目錄、可用的數(shù)據(jù)文件備份集和事務(wù)日志來執(zhí)行自動恢復(fù)。執(zhí)行數(shù)據(jù)庫恢復(fù),應(yīng)當(dāng)關(guān)閉數(shù)據(jù)庫,使其不可使用。數(shù)據(jù)庫恢復(fù)102表空間恢復(fù)當(dāng)一個數(shù)據(jù)庫的部分被損壞,并且需要高可用性時,可以考慮使用表空間恢復(fù)。對特定表空間的全部數(shù)據(jù)文件中丟失的工作進(jìn)行恢復(fù)。但是,如果系統(tǒng)表空間損壞了,不能執(zhí)行系統(tǒng)表空間的恢復(fù)工作。表空間恢復(fù)103數(shù)據(jù)文件恢復(fù)當(dāng)一個單獨的數(shù)據(jù)文件損壞,可以考慮數(shù)據(jù)文件恢復(fù),可用于一個特定數(shù)據(jù)文件中丟失的工作。在數(shù)據(jù)庫打開,并且受損的數(shù)據(jù)文件所在的表空間脫機后,利用恢復(fù)管理器來執(zhí)行數(shù)據(jù)文件的恢復(fù)。數(shù)據(jù)文件恢復(fù)104在一些情況下,可以執(zhí)行不完全恢復(fù),使用事務(wù)日志的重做項恢復(fù)提交事務(wù)的一部分工作,重構(gòu)受損的數(shù)據(jù)庫,使其恢復(fù)介質(zhì)故障前或用戶出錯之前的一個事務(wù)一致性狀態(tài)。

Oracle和恢復(fù)管理器支持三種不同類型的不完全恢復(fù)基于時間(TIME)的恢復(fù)基于修改(SCN)的恢復(fù)基于取消的恢復(fù)。7.6不完全恢復(fù)在一些情況下,可以執(zhí)行不完全恢復(fù),使用事務(wù)日志的重做項恢復(fù)提1058小結(jié)數(shù)據(jù)庫的常見故障主要有:系統(tǒng)崩潰或服務(wù)器崩潰,用戶錯誤、沖突或者磁盤失效導(dǎo)致的文件丟失,SQL語句失敗,網(wǎng)絡(luò)故障,場地災(zāi)難。

8小結(jié)數(shù)據(jù)庫的常見故障主要有:系統(tǒng)崩潰或服務(wù)器崩潰,用戶106備份(Backup)就是把數(shù)據(jù)庫復(fù)制到磁帶、磁盤等存儲設(shè)備的過程,以供故障發(fā)生時執(zhí)行數(shù)據(jù)庫恢復(fù)(Recover)。備份的目的是防止不可預(yù)料的錯誤和故障導(dǎo)致數(shù)據(jù)丟失和應(yīng)用錯誤。Oracle數(shù)據(jù)庫的備份方法有:冷備份、熱備份和邏輯備份(Export/Import)?;謴?fù)方法有:完全恢復(fù)、不完全恢復(fù)、RMAN備份恢復(fù)等方式。備份(Backup)就是把數(shù)據(jù)庫復(fù)制到磁帶、磁盤等存儲設(shè)備的107Oracle數(shù)據(jù)庫保護(hù)機制主要有數(shù)據(jù)庫備份、事務(wù)日志。在Oracle中,Export實用程序就是用來完成邏輯備份。若要使用邏輯備份來恢復(fù)數(shù)據(jù)庫,那么可以使用Oracle的Import實用程序。當(dāng)用戶導(dǎo)入導(dǎo)出時,有相應(yīng)的權(quán)限要求。Oracle數(shù)據(jù)庫保護(hù)機制主要有數(shù)據(jù)庫備份、事務(wù)日志。108脫機備份是最簡單的一種數(shù)據(jù)庫備份方式,必須在數(shù)據(jù)庫關(guān)閉后進(jìn)行備份,用戶不能訪問數(shù)據(jù)庫,是一種完全備份。脫機備份可以用于恢復(fù)整個數(shù)據(jù)庫,恢復(fù)時將備份的文件復(fù)制回來,系統(tǒng)就可以正常運行,但備份后數(shù)據(jù)庫所做的操作就丟失了,系統(tǒng)只是恢復(fù)到備份時的狀態(tài)。脫機備份一般需要備份數(shù)據(jù)文件、控制文件、聯(lián)機重做日志、參數(shù)文件等。脫機備份是最簡單的一種數(shù)據(jù)庫備份方式,必須在數(shù)據(jù)庫關(guān)閉后進(jìn)行109聯(lián)機備份是在數(shù)據(jù)庫運行時進(jìn)行的備份,用戶仍然可以訪問數(shù)據(jù)庫。聯(lián)機備份要求數(shù)據(jù)庫運行在歸檔模式下。聯(lián)機備份一般備份數(shù)據(jù)文件、控制文件和日志文件。一般寫入磁盤或磁帶。聯(lián)機備份是在數(shù)據(jù)庫運行時進(jìn)行的備份,用戶仍然可以訪問數(shù)據(jù)庫。110創(chuàng)建OracleManagementServer(OMS),可以使用OMS的備份向?qū)崿F(xiàn)聯(lián)機備份與恢復(fù)。備份向?qū)Э梢圆捎妙A(yù)定義備份策略和自定義備份策略。恢復(fù)分為整個數(shù)據(jù)庫、表空間和數(shù)據(jù)文件恢復(fù)。

創(chuàng)建OracleManagementServer(OMS111數(shù)據(jù)庫恢復(fù)是DBMS的一個重要組成部分。恢復(fù)處理隨所發(fā)生的故障類型而不同?;謴?fù)可以分為完全恢復(fù)和不完全恢復(fù)。完全數(shù)據(jù)庫恢復(fù)是恢復(fù)到故障發(fā)生前的狀態(tài),所有已經(jīng)提交的操作都進(jìn)行恢復(fù),確保數(shù)據(jù)庫不丟失任何數(shù)據(jù),完全恢復(fù)只用于歸檔模式。不完全數(shù)據(jù)庫恢復(fù)是將數(shù)據(jù)庫恢復(fù)到備份點與介質(zhì)失敗點之間某個時刻的狀態(tài),并不是恢復(fù)所有提交的操作,不完全恢復(fù)可能丟失部分?jǐn)?shù)據(jù)。任何類型的恢復(fù)包括前滾階段和回滾階段。數(shù)據(jù)庫恢復(fù)是DBMS的一個重要組成部分?;謴?fù)處理隨所發(fā)生的故112Oracle數(shù)據(jù)庫備份與恢復(fù)Oracle數(shù)據(jù)庫備份與恢復(fù)113本章內(nèi)容1數(shù)據(jù)庫常見故障類型2數(shù)據(jù)庫保護(hù)機制3數(shù)據(jù)庫邏輯備份與恢復(fù)4脫機備份(冷備份)5聯(lián)機備份(熱備份)6使用OMS工具的備份與恢復(fù)向?qū)?數(shù)據(jù)庫恢復(fù)本章內(nèi)容1數(shù)據(jù)庫常見故障類型114DBA的主要職責(zé)之一是備份數(shù)據(jù)庫和在數(shù)據(jù)庫發(fā)生故障時高效、安全地恢復(fù)數(shù)據(jù)庫。備份方法冷備份熱備份邏輯備份(Export/Import)恢復(fù)方法完全恢復(fù)不完全恢復(fù)RMAN備份恢復(fù)等方式DBA的主要職責(zé)之一是備份數(shù)據(jù)庫和在數(shù)據(jù)庫發(fā)生故障時高效、安1151數(shù)據(jù)庫常見故障類型系統(tǒng)崩潰或服務(wù)器崩潰用戶錯誤、沖突或者磁盤失效導(dǎo)致的文件丟失SQL語句失敗網(wǎng)絡(luò)故障場地災(zāi)難1數(shù)據(jù)庫常見故障類型系統(tǒng)崩潰或服務(wù)器崩潰1162數(shù)據(jù)庫保護(hù)機制Oracle數(shù)據(jù)庫保護(hù)機制:數(shù)據(jù)庫備份和事務(wù)日志。

Oracle數(shù)據(jù)庫事務(wù)日志數(shù)據(jù)庫備份2數(shù)據(jù)庫保護(hù)機制Oracle數(shù)據(jù)庫保護(hù)機制:數(shù)據(jù)庫備份和117數(shù)據(jù)庫備份一般來說,數(shù)據(jù)庫備份可以分為物理備份和邏輯備份。物理備份可分為脫機備份和聯(lián)機備份。脫機備份又稱為冷備份,只能在數(shù)據(jù)庫關(guān)閉后進(jìn)行備份;聯(lián)機備份又稱為熱備份,數(shù)據(jù)庫沒有關(guān)閉,用戶還可以使用。邏輯備份是使用Export實用程序備份,當(dāng)數(shù)據(jù)庫出現(xiàn)故障,可以使用Oracle的Import實用程序恢復(fù)數(shù)據(jù)庫。數(shù)據(jù)庫備份118事務(wù)日志數(shù)據(jù)庫的事務(wù)日志(TransactionLog)是一組操作系統(tǒng)文件,它記錄了提交事務(wù)所做的數(shù)據(jù)庫修改。日志主要是保護(hù)數(shù)據(jù)庫,在數(shù)據(jù)庫出現(xiàn)故障時執(zhí)行恢復(fù)。為了防止日志本身的故障,Oracle允許在不同的物理磁盤上維護(hù)兩個或多個日志的副本。事務(wù)日志119舉例,磁盤失效后如何保護(hù)和恢復(fù)數(shù)據(jù)庫。(1)正常工作時,每天晚上備份數(shù)據(jù)庫,包含所有數(shù)據(jù)文件。(2)某一天,包含數(shù)據(jù)庫的某個數(shù)據(jù)文件的磁盤壞了,因此一部分?jǐn)?shù)據(jù)不可用(做了磁盤容錯的情況例外),因此需要執(zhí)行數(shù)據(jù)庫恢復(fù)。(3)把有問題的磁盤更換為新的磁盤。(4)將最近的數(shù)據(jù)庫備份存入新的磁盤中以恢復(fù)丟失的數(shù)據(jù)文件,但是,恢復(fù)的數(shù)據(jù)文件丟失了備份發(fā)生后所提交的事務(wù)工作。(5)最后,執(zhí)行數(shù)據(jù)庫恢復(fù)工作。在恢復(fù)過程中,Oracle讀取事務(wù)日志,把過去提交的事務(wù)工作重做,使數(shù)據(jù)庫文件成為當(dāng)前文件。(6)數(shù)據(jù)庫恢復(fù)后,打開數(shù)據(jù),供應(yīng)用程序使用。舉例,磁盤失效后如何保護(hù)和恢復(fù)數(shù)據(jù)庫。120ORACLE數(shù)據(jù)庫兩種運行方式歸檔方式(ARCHIVELOG),歸檔方式的目的是當(dāng)數(shù)據(jù)庫發(fā)生故障時最大限度恢復(fù)數(shù)據(jù)庫,可以保證不丟失任何已提交的數(shù)據(jù)。不歸檔方式(NOARCHIVELOG),只能恢復(fù)數(shù)據(jù)庫到最近的回收點(冷備份或是邏輯備份)。ORACLE數(shù)據(jù)庫兩種運行方式1213數(shù)據(jù)庫邏輯備份與恢復(fù)

數(shù)據(jù)庫邏輯備份:讀一個數(shù)據(jù)庫記錄集,并以O(shè)racle提供的內(nèi)部格式寫入一個二進(jìn)制文件中。這些記錄的讀出與其物理位置無關(guān)。在Oracle中,Export實用程序執(zhí)行邏輯備份。使用Oracle的Import實用程序執(zhí)行數(shù)據(jù)庫恢復(fù)。當(dāng)用戶導(dǎo)入導(dǎo)出時,有相應(yīng)的權(quán)限要求。在OEM中,當(dāng)用戶連接到OracleManagementServer時,可以使用圖形界面執(zhí)行數(shù)據(jù)庫的導(dǎo)入和導(dǎo)出。3數(shù)據(jù)庫邏輯備份與恢復(fù)數(shù)據(jù)庫邏輯備份:讀一個數(shù)據(jù)庫記錄1223.1導(dǎo)出Oracle的實用程序Export用來讀取一個數(shù)據(jù)庫,并把輸入寫入一個稱為導(dǎo)出轉(zhuǎn)儲文件(exportdumpfile)的二進(jìn)制文件。

EXPUSERID=username/passwordPARAMETER=(value1,value2,..)可以通過如下命令來顯示參數(shù)EXPHELP=Y3.1導(dǎo)出Oracle的實用程序Export用來讀取一123導(dǎo)出方式:Full方式、User方式和Table方式。

完全數(shù)據(jù)庫導(dǎo)出expsystem/managerfull=Yconstraints=Yfile=f:\backup\test.dmp

導(dǎo)出用戶表expuser1/passwordtables=employeesfile=f:\backup\test.dmpexpuser1/passwordtables=(employees,jobs)file=f:\backup\test.dmp

導(dǎo)出用戶模式expuser1/passwordowner=user1file=test.dmp

導(dǎo)出方式:Full方式、User方式和Table方式。124一旦數(shù)據(jù)已經(jīng)導(dǎo)出,就可以通過Oracle的Import實用程序執(zhí)行導(dǎo)入,來恢復(fù)數(shù)據(jù)庫。Import實用程序讀取由Export創(chuàng)建的二進(jìn)制導(dǎo)出轉(zhuǎn)儲文件并執(zhí)行其中的命令。

IMPUSERID=username/passwordPARAMETER=(value1,value2,..)可以通過如下命令來顯示參數(shù)

IMPHELP=Y導(dǎo)出的數(shù)據(jù)可以導(dǎo)入到不同的數(shù)據(jù)庫中,甚至可以導(dǎo)入到與生成導(dǎo)出轉(zhuǎn)儲文件不同的模式中;可以導(dǎo)入全部或部分已導(dǎo)出的數(shù)據(jù)。3.2導(dǎo)入一旦數(shù)據(jù)已經(jīng)導(dǎo)出,就可以通過Oracle的Import實用程125導(dǎo)入用戶自身所擁有的表

IMPsystem/ora456tables=studentfile=f:\backuptest.dmp IMPsystem/ora456tables=(student,course)file=f:\backuptest.dmp導(dǎo)入用戶模式

impsystem/managerFROMUSER=scottTOUSER=systemtables=deptfile=f:\backup\test.dmp導(dǎo)入用戶自身所擁有的表126案例1,導(dǎo)出數(shù)據(jù)庫表,用戶誤操作刪除表,執(zhí)行導(dǎo)入表,恢復(fù)數(shù)據(jù)庫(1)TEST2數(shù)據(jù)庫(System用戶,口令為ora456),導(dǎo)出表student3.3邏輯備份案例案例1,導(dǎo)出數(shù)據(jù)庫表,用戶誤操作刪除表,執(zhí)行導(dǎo)入表,恢復(fù)數(shù)據(jù)127Oracle數(shù)據(jù)庫備份與恢復(fù)課件128(2)刪除表student中的數(shù)據(jù),或者將整個表刪除,數(shù)據(jù)已經(jīng)不存在,或者表被刪除

(2)刪除表student中的數(shù)據(jù),或者將整個表刪除,數(shù)據(jù)已129(3)導(dǎo)入表student,恢復(fù)數(shù)據(jù)庫(3)導(dǎo)入表student,恢復(fù)數(shù)據(jù)庫130(4)查詢表和數(shù)據(jù),驗證導(dǎo)入是否成功(4)查詢表和數(shù)據(jù),驗證導(dǎo)入是否成功131案例2,導(dǎo)入其他方案的表。將Scott的表dept導(dǎo)入System(1)System下沒有Scott的表dept,注意,這不同與查詢時使用scott.dept案例2,導(dǎo)入其他方案的表。將Scott的表dept導(dǎo)入Sys132Oracle數(shù)據(jù)庫備份與恢復(fù)課件133(2)在system下,導(dǎo)出Scott的表dept,導(dǎo)出文件test2.dmp(2)在system下,導(dǎo)出Scott的表dept,導(dǎo)出文件134(3)將Scott的表dept導(dǎo)入到System中(4)再次執(zhí)行步驟(1)中的查詢,驗證導(dǎo)入成功

(3)將Scott的表dept導(dǎo)入到System中1354脫機備份(冷備份)脫機備份是最簡單的一種數(shù)據(jù)庫備份方式,在數(shù)據(jù)庫關(guān)閉后進(jìn)行備份,用戶不能訪問數(shù)據(jù)庫,是一種完全備份。

脫機備份一般需要備份如下文件:(1)所有數(shù)據(jù)文件(2)所有控制文件(3)所有聯(lián)機重做日志(4)init.ora文件4脫機備份(冷備份)脫機備份是最簡單的一種數(shù)據(jù)庫備份方式136脫機備份步驟(1)以DBA或特權(quán)用戶登錄,對于需要的備份文件,用戶也可通過下列SQL語句來了解數(shù)據(jù)文件、重演日志文件及控制文件的相應(yīng)位置及名稱。SELECT*FROMV$LOGFILE;SELECT*FROMV$DBFILE;SELECT*FROMV$CONTROLFILE;脫機備份步驟137(2)關(guān)閉數(shù)據(jù)庫SHUTDOWNNORMAL;

或者執(zhí)行SHUTDOWNIMMEDIATE;(2)關(guān)閉數(shù)據(jù)庫138(3)復(fù)制數(shù)據(jù)文件用拷貝命令備份全部的數(shù)據(jù)文件、重做日志文件、控制文件、初始化參數(shù)文件等。簡單的處理方法是將數(shù)據(jù)庫所在路徑下的文件全部復(fù)制備份。在下面實驗案例中所用數(shù)據(jù)庫TEST2的目錄是:f:\oracle\oradata\test2(3)復(fù)制數(shù)據(jù)文件139(4)重新啟動數(shù)據(jù)庫STARTUP;(4)重新啟動數(shù)據(jù)庫140脫機備份的優(yōu)點:只需要拷貝文件,速度比較快。將文件拷貝回去,數(shù)據(jù)庫就可以恢復(fù)到某個時間點。若結(jié)合數(shù)據(jù)庫歸檔模式可以很好地恢復(fù)數(shù)據(jù)庫。維護(hù)量相對較少,但安全性相對較高。脫機備份的優(yōu)點:141脫機備份的缺點:脫機備份時,數(shù)據(jù)庫必須關(guān)閉。單獨使用脫機備份,數(shù)據(jù)庫只能基于某一時間點恢復(fù)。若磁盤空間有限,使用磁帶等外設(shè)時速度較慢。脫機備份不能按表或用戶恢復(fù)。脫機備份的缺點:142案例,脫機備份與不完全數(shù)據(jù)庫恢復(fù)脫機備份數(shù)據(jù)庫相應(yīng)文件,由于誤操作,刪除了users表空間對象STUDENT表,將備份的數(shù)據(jù)文件復(fù)制到原來的位置,恢復(fù)數(shù)據(jù)庫到執(zhí)行誤操作前的狀態(tài)。以SYSDBA登錄。數(shù)據(jù)字典DBA_TABLES可以查詢表所在的表空間。案例,脫機備份與不完全數(shù)據(jù)庫恢復(fù)143(1)對象STUDENT,有兩條記錄(1)對象STUDENT,有兩條記錄144(2)脫機備份

shutdownimmediate;備份數(shù)據(jù)文件user01.dbf,控制文件,重做日志文件,或者直接將f:\oracle\oradata\test2目錄下的文件全部備份。 備份結(jié)束重啟數(shù)據(jù)庫startup;(2)脫機備份145(3)對象student增加一條記錄

insertintosystem.studentvalues(‘1003’,’liming’,20,’CS’);(3)對象student增加一條記錄146(4)模擬誤操作,刪除了表STUDENT

droptablesystem.student;commit;(4)模擬誤操作,刪除了表STUDENT147(5)查詢對象STUDENT,返回錯誤信息(5)查詢對象STUDENT,返回錯誤信息148(6)關(guān)閉數(shù)據(jù)庫 shutdownimmediate;(7)復(fù)制原先備份的數(shù)據(jù)文件,控制文件,重做日志等到原來目錄下,f:\oracle\oradata\test2(8)startupmount;(6)關(guān)閉數(shù)據(jù)庫149(9)執(zhí)行基于取消的恢復(fù),recoverdatabaseuntilcancel(9)執(zhí)行基于取消的恢復(fù),recoverdatabase150(10)以RESETLOGS方式打開數(shù)據(jù)庫(10)以RESETLOGS方式打開數(shù)據(jù)庫151(11)查詢對象STUDENT,只有脫機備份的兩條記錄,備份后增加的記錄沒有恢復(fù)(11)查詢對象STUDENT,只有脫機備份的兩條記錄,備份1525聯(lián)機備份(熱備份)聯(lián)機備份是在數(shù)據(jù)庫運行時進(jìn)行的備份,用戶仍然可以訪問數(shù)據(jù)庫,一些關(guān)鍵行業(yè)的數(shù)據(jù)必須運行在7*24模式下,并不適合執(zhí)行脫機備份,必須使用聯(lián)機備份。聯(lián)機備份要求數(shù)據(jù)庫運行在歸檔(archivelog)模式下,該方式下,聯(lián)機重做日志被歸檔,數(shù)據(jù)庫中所有事務(wù)的完整記錄由Oracle以循環(huán)方式寫入聯(lián)機重做日志文件。聯(lián)機備份一般備份數(shù)據(jù)文件、控制文件和日志文件。

5聯(lián)機備份(熱備份)聯(lián)機備份是在數(shù)據(jù)庫運行時進(jìn)行的備份,153(1)備份所有數(shù)據(jù)文件(2)備份所有歸檔的重做日志文件(3)備份一個控制文件(4)檢查發(fā)生故障的數(shù)據(jù)文件,恢復(fù)數(shù)據(jù)文件(1)備份所有數(shù)據(jù)文件154聯(lián)機備份的優(yōu)點:可在表空間或數(shù)據(jù)文件級備份,備份時間短。備份時數(shù)據(jù)庫仍可使用??蛇_(dá)到秒級恢復(fù)(恢復(fù)到某一時間點上)??蓪缀跛袛?shù)據(jù)庫實體作恢復(fù)。恢復(fù)快速,大多數(shù)情況下恢復(fù)不需要關(guān)閉數(shù)據(jù)庫。聯(lián)機備份的優(yōu)點:155聯(lián)機備份的缺點:不能出錯,否則后果嚴(yán)重。若聯(lián)機備份不成功,所得結(jié)果不可用于時間點的恢復(fù)。因難于維護(hù),所以要特別小心,不允許“以失敗而告終”。聯(lián)機備份的缺點:156案例,聯(lián)機備份與完全數(shù)據(jù)庫恢復(fù)在表空間APPL_DATA上建立對象COURSE,首先執(zhí)行聯(lián)機備份,在COURSE表上加入記錄,然后刪除數(shù)據(jù)文件APPL_DATA,最后執(zhí)行恢復(fù),數(shù)據(jù)文件重新聯(lián)機,驗證恢復(fù)成功。案例,聯(lián)機備份與完全數(shù)據(jù)庫恢復(fù)157(1)在歸檔模式下,在表空間APPL_DATA上建立表COURSE,并插入兩條記錄(1)在歸檔模式下,在表空間APPL_DATA上建立表COU158(2)切換日志,查看v$log確認(rèn)當(dāng)前日志已經(jīng)更改 altersystemswitchlogfile;(3)備份控制文件(在本案例中可以不做) alterdatabasebackupcontrolfileto′f:\backup\backup.ctl′;(4)備份數(shù)據(jù)文件 先將表空間APPL_DATA設(shè)置為備份模式 altertablespaceappl_databeginbackup; 拷貝表空間的數(shù)據(jù)文件APPL_DATA.ORA,其他數(shù)據(jù)文件不變。 copyf:\oracle\oradata\test2\appl_data.oraf:\backup\appl_data.ora 將表空間APPL_DATA設(shè)置為正常模式 altertablespaceappl_dataendbackup;(2)切換日志,查看v$log確認(rèn)當(dāng)前日志已經(jīng)更改159(5)在COURSE表上添加記錄

insertintocoursevalues(′30′,′database′,′20′,4);(5)在COURSE表上添加記錄160(6)使表空間脫機,刪除數(shù)據(jù)文件APPL_DATA.ORA

altertablespaceappl_dataoffline; delf:\oracle\oradata\test2\appl_data.ora(6)使表空間脫機,刪除數(shù)據(jù)文件APPL_DATA.ORA161(7)將表空間聯(lián)機,出現(xiàn)錯誤,提示恢復(fù)數(shù)據(jù)文件(7)將表空間聯(lián)機,出現(xiàn)錯誤,提示恢復(fù)數(shù)據(jù)文件162(8)將備份的數(shù)據(jù)文件復(fù)制到原來所在位置,執(zhí)行數(shù)據(jù)文件恢復(fù)。 copyf:\backup\appl_data.oraf:\oracle\oradata\test2\appl_data.ora然后,執(zhí)行數(shù)據(jù)文件恢復(fù)命令,本例中文件號為11 recoverdatafile11;(8)將備份的數(shù)據(jù)文件復(fù)制到原來所在位置,執(zhí)行數(shù)據(jù)文件恢復(fù)。163Oracle數(shù)據(jù)庫備份與恢復(fù)課件164(9)聯(lián)機表空間(9)聯(lián)機表空間165(10)查詢對象COURSE表,確認(rèn)聯(lián)機備份恢復(fù)成功,聯(lián)機備份前的數(shù)據(jù)和備份后新增加的數(shù)據(jù)都存在(10)查詢對象COURSE表,確認(rèn)聯(lián)機備份恢復(fù)成功,聯(lián)機備1666使用OMS工具的備份與恢復(fù)向?qū)?使用OMS工具的備份與恢復(fù)向?qū)?676.1Oracle管理服務(wù)器的配置使用備份向?qū)崿F(xiàn)聯(lián)機備份與恢復(fù),需要登錄到Oracle管理服務(wù)器OMS。需要先配置Oracle管理服務(wù)器,選擇【開始】->【程序】->【OraHome90】->【ConfigurationandMigrationTools】->【EnterpriseManagerConfigurationAssistant】,進(jìn)入OMS的配置步驟。進(jìn)入OMS后,為了保證備份向?qū)У恼_執(zhí)行,應(yīng)做如下工作:6.1Oracle管理服務(wù)器的配置使用備份向?qū)崿F(xiàn)聯(lián)機備168(1)檢查SYS和SYSTEM用戶權(quán)限,SYSTEM用戶在獨立模式下具有SYSDBA權(quán)限和SYSOPER權(quán)限,在管理服務(wù)器模式下不具備SYSDBA權(quán)限,不能啟動和關(guān)閉數(shù)據(jù)庫,需要人工授予SYSOPER和SYSDBA權(quán)限,同時應(yīng)給SYSTEM用戶添加角色EXP_FULL_DATABASE和角色I(xiàn)MP_FULL_DATABASE,確保數(shù)據(jù)庫備份與恢復(fù)操作正常。SYS用戶無論是獨立模式還是管理服務(wù)器模式都有SYSOPER和SYSDBA權(quán)限。(1)檢查SYS和SYSTEM用戶權(quán)限,SYSTEM用戶在獨169(2)檢查操作系統(tǒng)用戶是否作為批處理作業(yè)登錄。選擇【開始】->【程序】->【管理工具】->【本地安全策略】,選擇用戶權(quán)限分配,選擇作為批處理作業(yè)登錄,雙擊打開后添加Administrator用戶。(3)檢查節(jié)點和數(shù)據(jù)庫的首選證明,設(shè)置節(jié)點的首先身份證明中的用戶名為Administrator,并輸入口令。設(shè)置數(shù)據(jù)庫的首先身份證明的用戶為SYS,輸入口令,選擇以SYSDBA角色。(2)檢查操作系統(tǒng)用戶是否作為批處理作業(yè)登錄。選擇【開始】-170第一次登錄管理服務(wù)器OMS,管理員為SYSMAN,缺省口令為OEM_TEMP初次登錄,系統(tǒng)將提示更改SYSMAN口令。如果系統(tǒng)提示連接驗證錯誤VTK-1000,查看【管理工具】->【服務(wù)】->【OracleOraHome90ManagementServer】是否啟動,若沒有啟動,應(yīng)手動啟動該服務(wù)。6.2使用OMS備份向?qū)У谝淮蔚卿浌芾矸?wù)器OMS,管理員為SYSMAN,缺省口令為171Oracle數(shù)據(jù)庫備份與恢復(fù)課件172Oracle數(shù)據(jù)庫備份與恢復(fù)課件1731.預(yù)定義備份策略1.預(yù)定義備份策略174Oracle數(shù)據(jù)庫備份與恢復(fù)課件175首先選擇預(yù)定義備份策略,單擊下一步按鈕,出現(xiàn)“備份頻率”對話框首先選擇預(yù)定義備份策略,單擊下一步按鈕,出現(xiàn)“備份頻率”對話176Oracle數(shù)據(jù)庫備份與恢復(fù)課件177Oracle數(shù)據(jù)庫備份與恢復(fù)課件178Oracle數(shù)據(jù)庫備份與恢復(fù)課件179Oracle數(shù)據(jù)庫備份與恢復(fù)課件1802.自定義備份策略打開備份向?qū)?,策略選擇自定義備份策略,出現(xiàn)“備份選擇”對話框。2.自定義備份策略181為了較快地看到備份結(jié)果,我們選擇備份表空間,這是數(shù)據(jù)庫子集的備份。為了較快地看到備份結(jié)果,我們選擇備份表空間,這是數(shù)據(jù)庫子集的182Oracle數(shù)據(jù)庫備份與恢復(fù)課件183Oracle數(shù)據(jù)庫備份與恢復(fù)課件184Oracle數(shù)據(jù)庫備份與恢復(fù)課件185Oracle數(shù)據(jù)庫備份與恢復(fù)課件186Oracle數(shù)據(jù)庫備份與恢復(fù)課件187Oracle數(shù)據(jù)庫備份與恢復(fù)課件188Oracle數(shù)據(jù)庫備份與恢復(fù)課件189查看“作業(yè)”節(jié)點,在活動項中可以看到備份0053已經(jīng)啟動,等待一會兒切換到歷史記錄,可以看到備份0053已經(jīng)執(zhí)行完成。查看“作業(yè)”節(jié)點,在活動項中可以看到備份0053已經(jīng)啟動,等190選擇備份0053,右鍵選擇“查看作業(yè)”,可以顯示備份的詳細(xì)信息。選擇備份0053,右鍵選擇“查看作業(yè)”,可以顯示備份的詳細(xì)信191選擇狀態(tài)已完成,單擊“顯示輸出”按鈕,得到執(zhí)行備份的腳本代碼。

選擇狀態(tài)已完成,單擊“顯示輸出”按鈕,得到執(zhí)行備份的腳本代碼192向?qū)Щ謴?fù)可以選擇數(shù)據(jù)庫恢復(fù)表空間恢復(fù)數(shù)據(jù)文件恢復(fù)三種恢復(fù)向?qū)袆e目標(biāo)數(shù)據(jù)庫的狀態(tài)(歸檔日志,無歸檔日志,已裝載沒有打開,裝載并打開)來禁止選項。

6.3使用OMS恢復(fù)向?qū)驅(qū)Щ謴?fù)可以選擇6.3使用OMS恢復(fù)向?qū)?93恢復(fù)整個數(shù)據(jù)庫時,將恢復(fù)屬于該數(shù)據(jù)庫的所有數(shù)據(jù)文件,要求數(shù)據(jù)庫只處于裝載狀態(tài),即NOMOUNT方式啟動。表空間恢復(fù)將恢復(fù)數(shù)據(jù)庫的一個子集合。對選定的表空間進(jìn)行恢復(fù),一般要求數(shù)據(jù)庫運行在歸檔模式下。數(shù)據(jù)文件恢復(fù)將恢復(fù)單個數(shù)據(jù)文件,數(shù)據(jù)文件恢復(fù)不如表空間恢復(fù)那樣常用,一般要求數(shù)據(jù)庫運行在歸檔模式下恢復(fù)整個數(shù)據(jù)庫時,將恢復(fù)屬于該數(shù)據(jù)庫的所有數(shù)據(jù)文件,要求數(shù)據(jù)194登錄到管理服務(wù)器,選擇數(shù)據(jù)庫,選擇【工具】->【數(shù)據(jù)庫向?qū)А?>【備份管理】->【恢復(fù)】,起用恢復(fù)向?qū)?。如果不能啟動OMS,應(yīng)查看【管理工具】->【服務(wù)】->【OracleOraHome90ManagementServer】是否啟動,如果沒有啟動,先啟動該服務(wù)。

登錄到管理服務(wù)器,選擇數(shù)據(jù)庫,選擇【工具】->【數(shù)據(jù)庫向?qū)А?95Oracle數(shù)據(jù)庫備份與恢復(fù)課件196Oracle數(shù)據(jù)庫備份與恢復(fù)課件197Oracle數(shù)據(jù)庫備份與恢復(fù)課件198Oracle數(shù)據(jù)庫備份與恢復(fù)課件199Oracle數(shù)據(jù)庫備份與恢復(fù)課件200Oracle數(shù)據(jù)庫備份與恢復(fù)課件201Oracle數(shù)據(jù)庫備份與恢復(fù)課件202若要查看執(zhí)行情況,可以在OMS的節(jié)點“作業(yè)”中,選擇歷史記錄確認(rèn)備份和恢復(fù)情況。若要查看執(zhí)行情況,可以在OMS的節(jié)點“作業(yè)”中,選擇歷史記錄2035.7數(shù)據(jù)庫恢復(fù)恢復(fù)可以分為完全恢復(fù)和不完全恢復(fù)

完全數(shù)據(jù)庫恢復(fù)是恢復(fù)到故障發(fā)生前的狀態(tài),所有已經(jīng)提交的操作都進(jìn)行恢復(fù),確保數(shù)據(jù)庫不丟失任何數(shù)據(jù),完全恢復(fù)只用于歸檔模式。不完全數(shù)據(jù)庫恢復(fù)是將數(shù)據(jù)庫恢復(fù)到備份點與介質(zhì)失敗點之間某個時刻的狀態(tài),并不是恢復(fù)所有提交的操作,不完全恢復(fù)可能丟失部分?jǐn)?shù)據(jù)。任何類型的恢復(fù)包括兩個階段:前滾階段和回滾(回退)階段。

5.7數(shù)據(jù)庫恢復(fù)恢復(fù)可以分為完全恢復(fù)和不完全恢復(fù)204前滾階段在前滾恢復(fù)階段(roll-forwardrecovery),恢復(fù)管理器應(yīng)用必要的事務(wù)日志組“重做”(REDO)所有提交的不在數(shù)據(jù)庫數(shù)據(jù)文件中的事務(wù)。前滾階段205回滾階段在前滾恢復(fù)后,Oracle必須執(zhí)行回滾恢復(fù)(roll-backrecovery)。由于一些未完成的事務(wù)對數(shù)據(jù)庫的修改信息已經(jīng)提交到數(shù)據(jù)庫,為保證數(shù)據(jù)庫的一致性,需要清除這些事務(wù)對數(shù)據(jù)庫的修改,數(shù)據(jù)庫應(yīng)執(zhí)行回滾操作(UNDO),強制撤銷這些未完成事務(wù)。回滾階段206前滾和回滾的執(zhí)行除了管理員或應(yīng)用程序調(diào)用外,執(zhí)行前滾操縱還是回滾操作與檢查點的出現(xiàn)相關(guān)

12345檢查點系統(tǒng)故障上一檢查點無前滾回滾前滾回滾故障時需要的動作前滾和回滾的執(zhí)行除了管理員或應(yīng)用程序調(diào)用外,執(zhí)行前滾操縱還是207數(shù)據(jù)庫備份日志回退段控制文件7.1恢復(fù)數(shù)據(jù)庫所使用的結(jié)構(gòu)數(shù)據(jù)庫備份7.1恢復(fù)數(shù)據(jù)庫所使用的結(jié)構(gòu)208當(dāng)數(shù)據(jù)庫實例意外地(如掉電、后臺進(jìn)程故障等)或預(yù)料地(發(fā)出shutdownabort語句)終止時出現(xiàn)實例故障,此時需要實例恢

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論