![數(shù)據(jù)庫備份與恢復(fù)綜合概述課件_第1頁](http://file4.renrendoc.com/view/5de4f6c101325c0ace92fe816f414c01/5de4f6c101325c0ace92fe816f414c011.gif)
![數(shù)據(jù)庫備份與恢復(fù)綜合概述課件_第2頁](http://file4.renrendoc.com/view/5de4f6c101325c0ace92fe816f414c01/5de4f6c101325c0ace92fe816f414c012.gif)
![數(shù)據(jù)庫備份與恢復(fù)綜合概述課件_第3頁](http://file4.renrendoc.com/view/5de4f6c101325c0ace92fe816f414c01/5de4f6c101325c0ace92fe816f414c013.gif)
![數(shù)據(jù)庫備份與恢復(fù)綜合概述課件_第4頁](http://file4.renrendoc.com/view/5de4f6c101325c0ace92fe816f414c01/5de4f6c101325c0ace92fe816f414c014.gif)
![數(shù)據(jù)庫備份與恢復(fù)綜合概述課件_第5頁](http://file4.renrendoc.com/view/5de4f6c101325c0ace92fe816f414c01/5de4f6c101325c0ace92fe816f414c015.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第11章數(shù)據(jù)庫備份與恢復(fù)1第11章數(shù)據(jù)庫備份與恢復(fù)1本章內(nèi)容備份與恢復(fù)概述物理備份與恢復(fù)邏輯備份與恢復(fù)2本章內(nèi)容備份與恢復(fù)概述2本章要求了解備份與恢復(fù)的重要性和概念掌握數(shù)據(jù)庫的冷備份方法掌握數(shù)據(jù)庫的熱備份方法掌握數(shù)據(jù)庫完全恢復(fù)方法掌握數(shù)據(jù)不完全恢復(fù)方法掌握邏輯備份和恢復(fù)方法3本章要求了解備份與恢復(fù)的重要性和概念311.1備份與恢復(fù)概述備份與恢復(fù)的基本概念Oracle數(shù)據(jù)庫故障類型及恢復(fù)措施備份的原則與策略恢復(fù)的原則與策略411.1備份與恢復(fù)概述備份與恢復(fù)的基本概念411.1.1備份與恢復(fù)的概念備份與恢復(fù)的作用備份的概念與類型恢復(fù)的概念、類型與恢復(fù)機(jī)制511.1.1備份與恢復(fù)的概念備份與恢復(fù)的作用5(1)備份與恢復(fù)的作用數(shù)據(jù)庫系統(tǒng)在運(yùn)行中可能發(fā)生故障,輕則導(dǎo)致事務(wù)異常中斷,影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,重則破壞數(shù)據(jù)庫,使數(shù)據(jù)庫中的數(shù)據(jù)部分或全部丟失。數(shù)據(jù)庫備份與恢復(fù)的目的就是為了保證在各種故障發(fā)生后,數(shù)據(jù)庫中的數(shù)據(jù)都能從錯(cuò)誤狀態(tài)恢復(fù)到某種邏輯一致的狀態(tài)。6(1)備份與恢復(fù)的作用數(shù)據(jù)庫系統(tǒng)在運(yùn)行中可能發(fā)生故障,輕則導(dǎo)(2)備份的概念與類型概念數(shù)據(jù)庫備份就是對數(shù)據(jù)庫中部分或全部數(shù)據(jù)進(jìn)行復(fù)制,形成副本,存放到一個(gè)相對獨(dú)立的設(shè)備上,如磁盤、磁帶,以備將來數(shù)據(jù)庫出現(xiàn)故障時(shí)使用。根據(jù)數(shù)據(jù)備份方式的不同,數(shù)據(jù)庫備份分為:
物理備份:將組成數(shù)據(jù)庫的數(shù)據(jù)文件、重做日志文件、控制文件、初始化參數(shù)文件等操作系統(tǒng)文件進(jìn)行復(fù)制,將形成的副本保存到與當(dāng)前系統(tǒng)獨(dú)立的磁盤或磁帶上。邏輯備份是指利用Oracle提供的導(dǎo)出工具(如Expdp,Export)將數(shù)據(jù)庫中的數(shù)據(jù)抽取出來存放到一個(gè)二進(jìn)制文件中。7(2)備份的概念與類型概念7根據(jù)數(shù)據(jù)庫備份時(shí)是否關(guān)閉數(shù)據(jù)庫服務(wù)器,物理備份分為:冷備份又稱停機(jī)備份,是指在關(guān)閉數(shù)據(jù)庫的情況下將所有的數(shù)據(jù)庫文件復(fù)制到另一個(gè)磁盤或磁帶上去。熱備份又稱聯(lián)機(jī)備份,是指在數(shù)據(jù)庫運(yùn)行的情況下對數(shù)據(jù)庫進(jìn)行的備份。要進(jìn)行熱備份,數(shù)據(jù)庫必須運(yùn)行在歸檔日志模式下。8根據(jù)數(shù)據(jù)庫備份時(shí)是否關(guān)閉數(shù)據(jù)庫服務(wù)器,物理備份分為:8根據(jù)數(shù)據(jù)庫備份的規(guī)模不同,物理備份可分為:完全備份:指對整個(gè)數(shù)據(jù)庫進(jìn)行備份,包括所有的物理文件。部分備份:對部分?jǐn)?shù)據(jù)文件、表空間、控制文件、歸檔重做日志文件等進(jìn)行備份。根據(jù)數(shù)據(jù)庫是否運(yùn)行在歸檔模式,物理備份可分為:歸檔備份非歸檔備份9根據(jù)數(shù)據(jù)庫備份的規(guī)模不同,物理備份可分為:9(3)恢復(fù)的概念、類型與恢復(fù)機(jī)制概念數(shù)據(jù)庫恢復(fù)是指在數(shù)據(jù)庫發(fā)生故障時(shí),使用數(shù)據(jù)庫備份還原數(shù)據(jù)庫,使數(shù)據(jù)庫恢復(fù)到無故障狀態(tài)。根據(jù)數(shù)據(jù)庫恢復(fù)時(shí)使用的備份不同,恢復(fù)分為:所謂的物理恢復(fù)就是,利用物理備份來恢復(fù)數(shù)據(jù)庫,即利用物理備份文件恢復(fù)損毀文件,是在操作系統(tǒng)級(jí)別上進(jìn)行的。邏輯恢復(fù)是指利用邏輯備份的二進(jìn)制文件,使用Oracle提供的導(dǎo)入工具(如Impdp,Import)將部分或全部信息重新導(dǎo)入數(shù)據(jù)庫,恢復(fù)損毀或丟失的數(shù)據(jù)。根據(jù)數(shù)據(jù)庫恢復(fù)程度的不同,恢復(fù)可分為:完全恢復(fù):利用備份使數(shù)據(jù)庫恢復(fù)到出現(xiàn)故障時(shí)的狀態(tài)。不完全恢復(fù):利用備份使數(shù)據(jù)庫恢復(fù)到出現(xiàn)故障時(shí)刻之前的某個(gè)狀態(tài)。10(3)恢復(fù)的概念、類型與恢復(fù)機(jī)制概念10數(shù)據(jù)庫的恢復(fù)分3個(gè)步驟進(jìn)行:首先使用一個(gè)完整備份將數(shù)據(jù)庫恢復(fù)到備份時(shí)刻的狀態(tài);然后利用歸檔日志文件和聯(lián)機(jī)重做日志文件中的日志信息,采用前滾技術(shù)(RollForward)重做備份以后已經(jīng)完成并提交的事物;最后利用回滾技術(shù)(RollBack)取消發(fā)生故障時(shí)已寫入日志文件但沒有提交的事物,將數(shù)據(jù)庫恢復(fù)到故障時(shí)刻的狀態(tài)。11數(shù)據(jù)庫的恢復(fù)分3個(gè)步驟進(jìn)行:11在T1和T3時(shí)刻進(jìn)行了兩次數(shù)據(jù)庫備份,在T5時(shí)刻數(shù)據(jù)庫出現(xiàn)故障。如果使用T1時(shí)刻的備份1恢復(fù)數(shù)據(jù)庫,則只能恢復(fù)到T1時(shí)刻的狀態(tài),即不完全恢復(fù);如果使用T3時(shí)刻的備份2恢復(fù)數(shù)據(jù)庫,則可以恢復(fù)到T3時(shí)刻到T5時(shí)刻的任意狀態(tài)(歸檔日志與聯(lián)機(jī)日志)。
12在T1和T3時(shí)刻進(jìn)行了兩次數(shù)據(jù)庫備份,在T5時(shí)刻數(shù)據(jù)庫出現(xiàn)故11.1.2Oracle數(shù)據(jù)庫故障類型及
恢復(fù)措施語句故障進(jìn)程故障用戶錯(cuò)誤實(shí)例失敗網(wǎng)絡(luò)故障介質(zhì)故障1311.1.2Oracle數(shù)據(jù)庫故障類型及
恢復(fù)措施語句故語句故障語句故障是指執(zhí)行SQL語句時(shí)發(fā)生的故障。例如,對不存在的表執(zhí)行SELECT操作、向已無空間可用的表中執(zhí)行INSERT操作等都會(huì)發(fā)生語句故障,Oracle將返回給用戶一個(gè)錯(cuò)誤信息。語句故障通常不需要DBA干預(yù),Oracle會(huì)自動(dòng)回滾產(chǎn)生錯(cuò)誤的SQL語句操作。進(jìn)程故障進(jìn)程故障是指用戶進(jìn)程、服務(wù)器進(jìn)程或數(shù)據(jù)庫后臺(tái)進(jìn)程由于某種原因而意外終止,此時(shí)該進(jìn)程將無法使用,但不影響其他進(jìn)程的運(yùn)行。Oracle的后臺(tái)進(jìn)程PMON能夠自動(dòng)監(jiān)測并恢復(fù)故障進(jìn)程。如果該進(jìn)程無法恢復(fù),則需要DBA關(guān)閉并重新啟動(dòng)數(shù)據(jù)庫實(shí)例。14語句故障14用戶錯(cuò)誤用戶錯(cuò)誤是指用戶在使用數(shù)據(jù)庫時(shí)產(chǎn)生的錯(cuò)誤。例如,用戶意外刪除某個(gè)表或表中的數(shù)據(jù)。用戶錯(cuò)誤無法由Oracle自動(dòng)進(jìn)行恢復(fù),管理員可以使用邏輯備份來恢復(fù)。實(shí)例失敗實(shí)例失敗是指由于某種原因?qū)е聰?shù)據(jù)庫實(shí)例無法正常工作。例如,突然斷電導(dǎo)致數(shù)據(jù)庫服務(wù)器立即關(guān)閉、數(shù)據(jù)庫服務(wù)器硬件故障導(dǎo)致操作系統(tǒng)無法運(yùn)行等。實(shí)例失敗時(shí),需要進(jìn)行實(shí)例重新啟動(dòng),在實(shí)例重新啟動(dòng)的過程中,數(shù)據(jù)庫后臺(tái)進(jìn)程SMON會(huì)自動(dòng)對實(shí)例進(jìn)行恢復(fù)。15用戶錯(cuò)誤15網(wǎng)絡(luò)故障網(wǎng)絡(luò)故障是指由于通信軟件或硬件故障,導(dǎo)致應(yīng)用程序或用戶與數(shù)據(jù)庫服務(wù)器之間的通信中斷。數(shù)據(jù)庫的后臺(tái)進(jìn)程PMON將自動(dòng)監(jiān)測并處理意外中斷的用戶進(jìn)程和服務(wù)器進(jìn)程。介質(zhì)故障介質(zhì)故障是指由于各種原因引起的數(shù)據(jù)庫數(shù)據(jù)文件、控制文件或重做日志文件的損壞,導(dǎo)致系統(tǒng)無法正常運(yùn)行。例如,磁盤損壞導(dǎo)致文件系統(tǒng)被破壞。介質(zhì)故障是數(shù)據(jù)庫備份與恢復(fù)中主要關(guān)心的故障類型,需要管理員提前做好數(shù)據(jù)庫的備份,否則將導(dǎo)致數(shù)據(jù)庫無法恢復(fù)。16網(wǎng)絡(luò)故障1611.1.3備份原則與策略在剛建立數(shù)據(jù)庫時(shí),應(yīng)該立即進(jìn)行數(shù)據(jù)庫的完全備份;將所有的數(shù)據(jù)庫備份保存在一個(gè)獨(dú)立磁盤上(必須是與當(dāng)前數(shù)據(jù)庫系統(tǒng)正在使用的文件不同的磁盤);應(yīng)該保持控制文件的多路復(fù)用,且控制文件的副本應(yīng)該存放在不同磁盤控制器下的不同磁盤設(shè)備上;應(yīng)該保持多個(gè)聯(lián)機(jī)日志文件組,每個(gè)組中至少應(yīng)該保持兩個(gè)日志成員,同一日志組的多個(gè)成員應(yīng)該分散存放在不同磁盤上;至少保證兩個(gè)歸檔重做日志文件的歸檔目標(biāo),不同歸檔目標(biāo)應(yīng)該分散于不同磁盤;如果條件允許,盡量保證數(shù)據(jù)庫運(yùn)行于歸檔模式;根據(jù)數(shù)據(jù)庫數(shù)據(jù)變化的頻率情況確定數(shù)據(jù)庫備份規(guī)律;1711.1.3備份原則與策略在剛建立數(shù)據(jù)庫時(shí),應(yīng)該立即進(jìn)行在歸檔模式下,當(dāng)數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化時(shí),如創(chuàng)建或刪除表空間、添加數(shù)據(jù)文件、重做日志文件等,應(yīng)該備份數(shù)據(jù)庫的控制文件;在非歸檔模式下,當(dāng)數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化時(shí),應(yīng)該進(jìn)行數(shù)據(jù)庫的完全備份;在歸檔模式下,對于經(jīng)常使用的表空間,可以采用表空間備份方法提高備份效率;在歸檔模式下,通常不需要對聯(lián)機(jī)重做日志文件進(jìn)行備份;使用RESETLOGS方式打開數(shù)據(jù)庫后,應(yīng)該進(jìn)行一個(gè)數(shù)據(jù)庫的完全備份;對于重要的表中的數(shù)據(jù),可以采用邏輯備份方式進(jìn)行備份。18在歸檔模式下,當(dāng)數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化時(shí),如創(chuàng)建或刪除表空間、添11.1.4恢復(fù)原則與策略根據(jù)數(shù)據(jù)庫介質(zhì)故障原因,確定采用完全介質(zhì)恢復(fù)還是不完全介質(zhì)恢復(fù);如果數(shù)據(jù)庫運(yùn)行在非歸檔模式,則當(dāng)介質(zhì)故障發(fā)生時(shí),只能進(jìn)行數(shù)據(jù)庫的不完全恢復(fù),將數(shù)據(jù)庫恢復(fù)到最近的備份時(shí)刻的狀態(tài);如果數(shù)據(jù)庫運(yùn)行在歸檔模式,則當(dāng)一個(gè)或多個(gè)數(shù)據(jù)文件損壞時(shí),可以使用備份的數(shù)據(jù)文件進(jìn)行完全或不完全恢復(fù)數(shù)據(jù)庫;如果數(shù)據(jù)庫運(yùn)行在歸檔模式,則當(dāng)數(shù)據(jù)庫的控制文件損壞時(shí),可以使用備份的控制文件實(shí)現(xiàn)數(shù)據(jù)庫的不完全恢復(fù);如果數(shù)據(jù)庫運(yùn)行在歸檔模式,則當(dāng)數(shù)據(jù)庫的聯(lián)機(jī)日志文件損壞時(shí),可以使用備份的數(shù)據(jù)文件和聯(lián)機(jī)重做日志文件不完全恢復(fù)數(shù)據(jù)庫;如果執(zhí)行了不完全恢復(fù),則當(dāng)重新打開數(shù)據(jù)庫時(shí)應(yīng)該使用RESETLOGS選項(xiàng)。1911.1.4恢復(fù)原則與策略根據(jù)數(shù)據(jù)庫介質(zhì)故障原因,確定采11.2物理備份與恢復(fù)冷備份熱備份非歸檔模式下數(shù)據(jù)庫的恢復(fù)歸檔模式下數(shù)據(jù)庫的完全恢復(fù)歸檔模式下數(shù)據(jù)庫的不完全恢復(fù)利用OEM進(jìn)行物理備份與恢復(fù)2011.2物理備份與恢復(fù)冷備份20212111.2.1冷備份概述關(guān)閉數(shù)據(jù)庫實(shí)例。用操作系統(tǒng)的實(shí)用工具備份所有的物理文件,包括數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件等。2211.2.1冷備份概述22關(guān)閉數(shù)據(jù)庫,開始備份故障時(shí)刻
備份恢復(fù)
重裝備份副本恢復(fù)丟失數(shù)據(jù)備份完成如果沒有啟用歸檔模式,數(shù)據(jù)庫不能恢復(fù)到備份完成后的任意時(shí)刻。如果啟用歸檔模式,從冷備份結(jié)束后到出現(xiàn)故障這段時(shí)間的數(shù)據(jù)庫恢復(fù),可以利用聯(lián)機(jī)日志文件和歸檔日志文件實(shí)現(xiàn)。23關(guān)閉數(shù)據(jù)庫,故障時(shí)刻備份恢復(fù)重裝備份副本恢復(fù)丟失數(shù)據(jù)備冷備份步驟確定數(shù)據(jù)庫各種物理文件關(guān)閉數(shù)據(jù)庫備份所有相關(guān)的數(shù)據(jù)庫物理文件重新啟動(dòng)數(shù)據(jù)庫24冷備份步驟24啟動(dòng)SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)庫查詢當(dāng)前數(shù)據(jù)庫所有數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件的位置。SELECTfile_nameFROMdba_data_files;SELECTmemberFROMv$logfile;SELECTvalueFROMv$parameterWHEREname='control_files';關(guān)閉數(shù)據(jù)庫SHUTDOWNIMMEDIATE復(fù)制所有數(shù)據(jù)文件、聯(lián)機(jī)重做日志文件以及控制文件到備份磁盤。重新啟動(dòng)數(shù)據(jù)庫STARTUP25啟動(dòng)SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)庫2511.2.2熱備份數(shù)據(jù)庫完全熱備份的步驟:啟動(dòng)SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)庫將數(shù)據(jù)庫設(shè)置為歸檔模式以表空間為單位,進(jìn)行數(shù)據(jù)文件備份備份控制文件備份其他物理文件2611.2.2熱備份數(shù)據(jù)庫完全熱備份的步驟:26備份數(shù)據(jù)文件查看當(dāng)前數(shù)據(jù)庫有哪些表空間,以及每個(gè)表空間中有哪些數(shù)據(jù)文件。SELECTtablespace_name,file_nameFROMdba_data_filesORDERBYtablespace_name;分別對每個(gè)表空間中的數(shù)據(jù)文件進(jìn)行備份,其方法為將需要備份的表空間(如USERS)設(shè)置為備份狀態(tài)。ALTERTABLESPACEUSERSBEGINBACKUP;將表空間中所有的數(shù)據(jù)文件復(fù)制到備份磁盤。結(jié)束表空間的備份狀態(tài)。ALTERTABLESPACEUSERSENDBACKUP;對數(shù)據(jù)庫中所有表空間分別采用該步驟進(jìn)行備份。27備份數(shù)據(jù)文件27備份控制文件當(dāng)執(zhí)行了下列操作時(shí)應(yīng)該進(jìn)行控制文件備份ALTERDATABASEADDLOGFILEALERTDATABASEADDLOGFILEMEMBERALTERDATABASERENAMEFILEALTERDATABASEDROPLOGFILEGROUPALTERDATABASEDROPLOGFILEMEMBERCREATETABLESPACEALTERTABLESPACEADDDATAFILEALTERTABLESPACERENAMEDATAFILEDROPTABLESPACE28備份控制文件28控制文件備份方法將控制文件備份為二進(jìn)制文件。ALTERDATABASEBACKUPCONTROLFILETO'D:\ORACLE\BACKUP\CONTROL.BKP';
將控制文件備份為文本文件。ALTERDATABASEBACKUPCONTROLFILETOTRACE;
29控制文件備份方法29其他文件的備份歸檔當(dāng)前的聯(lián)機(jī)重做日志文件。ALTERSYSTEMARCHIVELOGCURRENT;備份歸檔重做日志文件,將所有的歸檔重做日志文件復(fù)制到備份磁盤中。備份初始化參數(shù)文件,將初始化參數(shù)文件復(fù)制到備份磁盤中。30其他文件的備份3011.2.3非歸檔模式下數(shù)據(jù)庫的恢復(fù)非歸檔模式下數(shù)據(jù)庫的恢復(fù)主要指利用非歸檔模式下的冷備份恢復(fù)數(shù)據(jù)庫。步驟為:關(guān)閉數(shù)據(jù)庫。SHUTDOWNIMMEDIATE將備份的所有數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件還原到原來所在的位置。重新啟動(dòng)數(shù)據(jù)庫。STARTUP注意非歸檔模式下的數(shù)據(jù)庫恢復(fù)是不完全恢復(fù),只能將數(shù)據(jù)庫恢復(fù)到最近一次完全冷備份的狀態(tài)。
3111.2.3非歸檔模式下數(shù)據(jù)庫的恢復(fù)非歸檔模式下數(shù)據(jù)庫的11.2.4歸檔模式下數(shù)據(jù)庫的完全恢復(fù)概述數(shù)據(jù)庫級(jí)完全恢復(fù)表空間級(jí)完全恢復(fù)數(shù)據(jù)文件級(jí)完全恢復(fù)數(shù)據(jù)庫完全恢復(fù)示例3211.2.4歸檔模式下數(shù)據(jù)庫的完全恢復(fù)概述32(1)概述概念歸檔模式下數(shù)據(jù)庫的完全恢復(fù)是指歸檔模式下一個(gè)或多個(gè)數(shù)據(jù)文件損壞,利用熱備份的數(shù)據(jù)文件替換損壞的數(shù)據(jù)文件,再結(jié)合歸檔日志文件和聯(lián)機(jī)重做日志文件,采用前滾技術(shù)重做自備份以來的所有改動(dòng),采用回滾技術(shù)回滾未提交的操作,以恢復(fù)到數(shù)據(jù)庫故障時(shí)刻的狀態(tài)。33(1)概述概念33
恢復(fù)的級(jí)別數(shù)據(jù)庫級(jí)完全恢復(fù):主要應(yīng)用于所有或多數(shù)數(shù)據(jù)文件損壞的恢復(fù);表空間級(jí)完全恢復(fù):對指定表空間中的數(shù)據(jù)文件進(jìn)行恢復(fù);數(shù)據(jù)文件級(jí)完全恢復(fù):是針對特定的數(shù)據(jù)文件進(jìn)行恢復(fù)。
注意數(shù)據(jù)庫級(jí)的完全恢復(fù)只能在數(shù)據(jù)庫裝載但沒有打開的狀態(tài)下進(jìn)行,而表空間級(jí)完全恢復(fù)和數(shù)據(jù)文件級(jí)完全恢復(fù)可以在數(shù)據(jù)庫處于裝載狀態(tài)或打開的狀態(tài)下進(jìn)行。
34恢復(fù)的級(jí)別34歸檔模式下數(shù)據(jù)庫完全恢復(fù)的基本語法:RECOVER[AUTOMATIC][FROM'location'][DATABASE|TABLESPACEtspname|DATAFILEdfname]參數(shù)說明
AUTOMATIC:進(jìn)行自動(dòng)恢復(fù),不需要DBA提供重做日志文件名稱;location:制定歸檔重做日志文件的位置。默認(rèn)為數(shù)據(jù)庫默認(rèn)的歸檔路徑。35歸檔模式下數(shù)據(jù)庫完全恢復(fù)的基本語法:35(2)數(shù)據(jù)庫級(jí)完全恢復(fù)
數(shù)據(jù)庫級(jí)完全恢復(fù)的步驟:如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT利用備份的數(shù)據(jù)文件還原所有損壞的數(shù)據(jù)文件。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)庫恢復(fù)命令。RECOVERDATABASE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;
36(2)數(shù)據(jù)庫級(jí)完全恢復(fù)數(shù)據(jù)庫級(jí)完全恢復(fù)的步驟:36(3)表空間級(jí)完全恢復(fù)
以EXAMPLE表空間的數(shù)據(jù)文件example01.dbf損壞為例模擬表空級(jí)的完全恢復(fù)。數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)
37(3)表空間級(jí)完全恢復(fù)以EXAMPLE表空間的數(shù)據(jù)文件e數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行表空間恢復(fù)命令。RECOVERTABLESPACEEXAMPLE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;38數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)38數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)①如果數(shù)據(jù)庫已經(jīng)關(guān)閉,則將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT②將損壞的數(shù)據(jù)文件設(shè)置為脫機(jī)狀態(tài)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'OFFLINE;③打開數(shù)據(jù)庫。
ALTERDATABASEOPEN;④將損壞的數(shù)據(jù)文件所在的表空間脫機(jī)。ALTERTABLESPACEEXAMPLEOFFLINEFORRECOVER;39數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)39⑤利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。⑥執(zhí)行表空間恢復(fù)命令。RECOVERTABLESPACEEXAMPLE;⑦將表空間聯(lián)機(jī)。ALTERTABLESPACEEXAMPLEONLINE;如果數(shù)據(jù)文件損壞時(shí)數(shù)據(jù)庫正處于打開狀態(tài),則可以直接執(zhí)行步驟(4)~(7)。40⑤利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)(4)數(shù)據(jù)文件級(jí)完全恢復(fù)
以數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\example01.dbf損壞為例模擬數(shù)據(jù)文件級(jí)的完全恢復(fù)。數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)41(4)數(shù)據(jù)文件級(jí)完全恢復(fù)以數(shù)據(jù)文件D:\oracle\pr數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)文件恢復(fù)命令。RECOVERDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF';將數(shù)據(jù)文件聯(lián)機(jī)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'ONLINE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;42數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)42數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)如果數(shù)據(jù)庫已經(jīng)關(guān)閉,則將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT將損壞的數(shù)據(jù)文件設(shè)置為脫機(jī)狀態(tài)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'OFFLINE;打開數(shù)據(jù)庫。
ALTERDATABASEOPEN;利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。43數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)43執(zhí)行數(shù)據(jù)文件恢復(fù)命令。RECOVERDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF';將數(shù)據(jù)文件聯(lián)機(jī)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'ONLINE;如果數(shù)據(jù)文件損壞時(shí)數(shù)據(jù)庫正處于打開狀態(tài),則可以直接執(zhí)行步驟(2)、(4)~(6)。44執(zhí)行數(shù)據(jù)文件恢復(fù)命令。44(5)數(shù)據(jù)庫完全恢復(fù)示例
以SYSTEM表空間的數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\system01.dbf損壞為例演示歸檔模式下的完全恢復(fù)操作。
首先進(jìn)行一次歸檔模式下的數(shù)據(jù)庫完整備份。以SYSDBA身份登錄數(shù)據(jù)庫進(jìn)行下列操作。CREATETABLEtest_rec(IDNUMBERPRIMARYKEY,NAMECHAR(20))TABLESPACESYSTEM;INSERTINTOtest_recVALUES(1,'ZHANGSAN');COMMIT;INSERTINTOtest_recVALUES(2,'LISI');COMMIT;ALTERSYSTEMSWITCHLOGFILE;SELECT*FROMtest_rec;SHUTDOWNABORT;45(5)數(shù)據(jù)庫完全恢復(fù)示例以SYSTEM表空間的數(shù)據(jù)文件D:刪除SYSTEM表空間的數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\system01.dbf,以模擬數(shù)據(jù)文件損壞的情形。用備份的數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\system01.dbf還原損壞(本文為被刪除)的數(shù)據(jù)文件。執(zhí)行恢復(fù)操作。由于SYSTEM表空間不能在數(shù)據(jù)庫打開后進(jìn)行恢復(fù),因此只能在數(shù)據(jù)庫處于裝載狀態(tài)時(shí)進(jìn)行恢復(fù)。STARTUPMOUNTRECOVERDATABASE;ALTERDATABASEOPEN;SELECT*FROMtest_rec;46刪除SYSTEM表空間的數(shù)據(jù)文件D:\oracle\prod11.2.5歸檔模式下數(shù)據(jù)庫的不完全恢復(fù)數(shù)據(jù)庫不完全恢復(fù)概述數(shù)據(jù)文件損壞的數(shù)據(jù)庫不完全恢復(fù)的步驟數(shù)據(jù)庫不完全恢復(fù)的示例控制文件損壞的數(shù)據(jù)庫不完全恢復(fù)4711.2.5歸檔模式下數(shù)據(jù)庫的不完全恢復(fù)數(shù)據(jù)庫不完全恢復(fù)(1)數(shù)據(jù)庫不完全恢復(fù)概述概念在歸檔模式下,數(shù)據(jù)庫的不完全恢復(fù)主要是指歸檔模式下數(shù)據(jù)文件損壞后,沒有將數(shù)據(jù)庫恢復(fù)到故障時(shí)刻的狀態(tài)。在進(jìn)行數(shù)據(jù)庫不完全恢復(fù)之前,首先確保對數(shù)據(jù)庫進(jìn)行了完全備份;在進(jìn)行數(shù)據(jù)文件損壞的不完全恢復(fù)時(shí)必須先使用完整的數(shù)據(jù)文件備份將數(shù)據(jù)庫恢復(fù)到備份時(shí)刻的狀態(tài)。在不完全恢復(fù)后,需要使用RESETLOGS選項(xiàng)打開數(shù)據(jù)庫,原來的重做日志文件被清空,新的重做日志文件序列號(hào)重新從1開始,因此原來的歸檔日志文件都不再起作用了,應(yīng)該移走或刪除;打開數(shù)據(jù)庫后,應(yīng)該及時(shí)備份數(shù)據(jù)庫,因?yàn)樵瓉淼膫浞荻家呀?jīng)無效了。48(1)數(shù)據(jù)庫不完全恢復(fù)概述概念48不完全恢復(fù)類型:基于時(shí)間的不完全恢復(fù):將數(shù)據(jù)庫恢復(fù)到備份與故障時(shí)刻之間的某個(gè)特定時(shí)刻?;诔蜂N的不完全恢復(fù):數(shù)據(jù)庫的恢復(fù)隨用戶輸入CANCEL命令而中止?;赟CN的不完全恢復(fù):將數(shù)據(jù)庫恢復(fù)到指定的SCN值時(shí)的狀態(tài)。49不完全恢復(fù)類型:49不完全恢復(fù)的語法為RECOVER[AUTOMATIC][FROM'location'][DATABASE][UNTILTIMEtime|CANCEL|CHANGEscn][USINGBACKUPCONTROLFILE]50不完全恢復(fù)的語法為50(2)數(shù)據(jù)文件損壞的數(shù)據(jù)庫不完全恢復(fù)的步驟如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT用備份的所有數(shù)據(jù)文件還原當(dāng)前數(shù)據(jù)庫的所有數(shù)據(jù)文件,即將數(shù)據(jù)庫的所有數(shù)據(jù)文件恢復(fù)到備份時(shí)刻的狀態(tài)。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)文件的不完全恢復(fù)命令。RECOVERDATABASEUNTILTIMEtime;(基于時(shí)間恢復(fù))RECOVERDATABASEUNTILCANCEL;(基于撤銷恢復(fù))RECOVERDATABASEUNTILCHANGEscn;(基于SCN恢復(fù))可以通過查詢數(shù)據(jù)字典視圖V$LOG_HISTORY獲得時(shí)間和SCN的信息。不完全恢復(fù)完成后,使用RESETLOGS選項(xiàng)啟動(dòng)數(shù)據(jù)庫。ALTERDATABASEOPENRESETLOGS;51(2)數(shù)據(jù)文件損壞的數(shù)據(jù)庫不完全恢復(fù)的步驟如果數(shù)據(jù)庫沒有關(guān)閉(3)數(shù)據(jù)庫不完全恢復(fù)的示例52(3)數(shù)據(jù)庫不完全恢復(fù)的示例52(4)控制文件損壞的數(shù)據(jù)庫不完全恢復(fù)如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT用備份的所有數(shù)據(jù)文件和控制文件還原當(dāng)前數(shù)據(jù)庫的所有數(shù)據(jù)文件、控制文件,即將數(shù)據(jù)庫的所有數(shù)據(jù)文件、控制文件恢復(fù)到備份時(shí)刻的狀態(tài)。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行不完全恢復(fù)命令。RECOVERDATABASEUNTILTIMEtimeUSINGBACKUPCONTROLFILE;RECOVERDATABASEUNTILCANCELUSINGBACKUPCONTROLFILE;RECOVERDATABASEUNTILCHANGEscnUSINGBACKUPCONTROLFILE;不完全恢復(fù)完成后,使用RESETLOGS選項(xiàng)啟動(dòng)數(shù)據(jù)庫。ALTERDATABASEOPENRESETLOGS;53(4)控制文件損壞的數(shù)據(jù)庫不完全恢復(fù)如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)11.2.6利用OEM進(jìn)行物理備份與恢復(fù)備份與恢復(fù)設(shè)置備份數(shù)據(jù)庫恢復(fù)數(shù)據(jù)庫5411.2.6利用OEM進(jìn)行物理備份與恢復(fù)備份與恢復(fù)設(shè)置(1)備份與恢復(fù)設(shè)置
55(1)備份與恢復(fù)設(shè)置5556565757(2)備份數(shù)據(jù)庫58(2)備份數(shù)據(jù)庫585959606061616262(3)恢復(fù)數(shù)據(jù)庫63(3)恢復(fù)數(shù)據(jù)庫6364646565666611.3邏輯備份與恢復(fù)邏輯備份與恢復(fù)概述使用Expdp導(dǎo)出數(shù)據(jù)使用Impdp導(dǎo)入數(shù)據(jù)使用OEM導(dǎo)出、導(dǎo)入數(shù)據(jù)6711.3邏輯備份與恢復(fù)邏輯備份與恢復(fù)概述6711.3.1邏輯備份與恢復(fù)概述邏輯備份與恢復(fù)的特點(diǎn)數(shù)據(jù)泵技術(shù)6811.3.1邏輯備份與恢復(fù)概述邏輯備份與恢復(fù)的特點(diǎn)68(1)邏輯備份與恢復(fù)的特點(diǎn)概述邏輯備份是指利用Oracle提供的導(dǎo)出工具,將數(shù)據(jù)庫中選定的記錄集或數(shù)據(jù)字典的邏輯副本以二進(jìn)制文件的形式存儲(chǔ)到操作系統(tǒng)中。邏輯備份的二進(jìn)制文件稱為轉(zhuǎn)儲(chǔ)文件,以dmp格式存儲(chǔ)。邏輯恢復(fù)是指利用Oracle提供的導(dǎo)入工具將邏輯備份形成的轉(zhuǎn)儲(chǔ)文件導(dǎo)入數(shù)據(jù)庫內(nèi)部,進(jìn)行數(shù)據(jù)庫的邏輯恢復(fù)。與物理備份與恢復(fù)不同,邏輯備份與恢復(fù)必須在數(shù)據(jù)庫運(yùn)行的狀態(tài)下進(jìn)行,因此當(dāng)數(shù)據(jù)庫發(fā)生介質(zhì)損壞而無法啟動(dòng)時(shí),不能利用邏輯備份恢復(fù)數(shù)據(jù)庫。因此,數(shù)據(jù)庫備份與恢復(fù)是以物理備份與恢復(fù)為主,邏輯備份與恢復(fù)為輔的。69(1)邏輯備份與恢復(fù)的特點(diǎn)概述69邏輯備份與恢復(fù)有以下特點(diǎn)及用途:可以在不同版本的數(shù)據(jù)庫間進(jìn)行數(shù)據(jù)移植,可以從Oracle數(shù)據(jù)庫的低版本移植到高版本;可以在不同操作系統(tǒng)上運(yùn)行的數(shù)據(jù)庫間進(jìn)行數(shù)據(jù)移植,例如可以從WindowsNT系統(tǒng)遷移到Unix系統(tǒng)等;可以在數(shù)據(jù)庫模式之間傳遞數(shù)據(jù),即先將一個(gè)模式中的對象進(jìn)行備份,然后再將該備份導(dǎo)入到數(shù)據(jù)庫其他模式中;數(shù)據(jù)的導(dǎo)出與導(dǎo)入與數(shù)據(jù)庫物理結(jié)構(gòu)沒有關(guān)系,是以對象為單位進(jìn)行的,這些對象在物理上可能存儲(chǔ)于不同的文件中;對數(shù)據(jù)庫進(jìn)行一次邏輯備份與恢復(fù)操作能重新組織數(shù)據(jù),消除數(shù)據(jù)庫中的鏈接及磁盤碎片,從而使數(shù)據(jù)庫的性能有較大的提高;除了進(jìn)行數(shù)據(jù)的備份與恢復(fù)外,還可以進(jìn)行數(shù)據(jù)庫對象定義、約束、權(quán)限等的備份與恢復(fù)。70邏輯備份與恢復(fù)有以下特點(diǎn)及用途:70(2)數(shù)據(jù)泵技術(shù)概述在Oracle9i及其之前的數(shù)據(jù)庫版本中提供了Export和Import實(shí)用程序用于邏輯備份與恢復(fù)。在Oracle10g數(shù)據(jù)庫中又推出了數(shù)據(jù)泵技術(shù),即DataPumpExport(Expdp)和DataPumpImport(Impdp)實(shí)用程序用于邏輯備份與恢復(fù)。需要注意,這兩類邏輯備份與恢復(fù)實(shí)用程序之間不兼容。使用Export備份的轉(zhuǎn)儲(chǔ)文件,不能使用Impdp進(jìn)行導(dǎo)入;同樣,使用Expdp備份的轉(zhuǎn)儲(chǔ)文件,也不能使用Import工具進(jìn)行導(dǎo)入。71(2)數(shù)據(jù)泵技術(shù)概述71兩類邏輯備份與恢復(fù)實(shí)用程序比較Export和Import是客戶端實(shí)用程序,可以在服務(wù)器端使用,也可以在客戶端使用;Expdp和Impdp是服務(wù)器端實(shí)用程序,只能在數(shù)據(jù)庫服務(wù)器端使用。利用Expdp,Impdp在服務(wù)器端多線程并行地執(zhí)行大量數(shù)據(jù)的導(dǎo)出與導(dǎo)入操作。數(shù)據(jù)泵技術(shù)具有重新啟動(dòng)作業(yè)的能力,即當(dāng)發(fā)生數(shù)據(jù)泵作業(yè)故障時(shí),DBA或用戶進(jìn)行干預(yù)修正后,可以發(fā)出數(shù)據(jù)泵重新啟動(dòng)命令,使作業(yè)從發(fā)生故障的位置繼續(xù)進(jìn)行。72兩類邏輯備份與恢復(fù)實(shí)用程序比較72使用數(shù)據(jù)泵技術(shù)準(zhǔn)備工作在使用Expdp,Impdp程序之前需要?jiǎng)?chuàng)建DIRECTORY對象,并將該對象的READ,WRITE權(quán)限授予用戶。例如:CREATEORREPLACEDIRECTORYdumpdirAS'D:\ORACLE\BACKUP';
GRANTREAD,WRITEONDIRECTORYdumpdirTOSCOTT;如果用戶要導(dǎo)出或?qū)敕峭J降膶ο?,還需要具有EXP_FULL_DATABASE和IMP_FULL_DATABASE權(quán)限。例如:GRANTEXP_FULL_DATABASE,IMP_FULL_DATABASETOSCOTT;
73使用數(shù)據(jù)泵技術(shù)準(zhǔn)備工作7311.3.2使用Expdp導(dǎo)出數(shù)據(jù)Expdp調(diào)用接口Expdp導(dǎo)出模式Expdp幫助及參數(shù)Expdp應(yīng)用實(shí)例7411.3.2使用Expdp導(dǎo)出數(shù)據(jù)Expdp調(diào)用接口7(1)Expdp調(diào)用接口
命令行接口(Command-LineInterface):在命令行中直接指定參數(shù)設(shè)置。參數(shù)文件接口(ParameterFileInterface):將需要的參數(shù)設(shè)置放到一個(gè)文件中,在命令行中用PARFILE參數(shù)指定參數(shù)文件。交互式命令接口(Interactive-CommandInterface):用戶可以通過交互命令進(jìn)行導(dǎo)出操作管理。75(1)Expdp調(diào)用接口命令行接口(Command-Lin(2)Expdp導(dǎo)出模式
全庫導(dǎo)出模式(FullExportMode):通過參數(shù)FULL指定,導(dǎo)出整個(gè)數(shù)據(jù)庫。模式導(dǎo)出模式(SchemaMode):通過參數(shù)SCHEMAS指定,是默認(rèn)的導(dǎo)出模式,導(dǎo)出指定模式中的所有對象。表導(dǎo)出模式(TableMode):通過參數(shù)TABLES指定,導(dǎo)出指定模式中指定的所有表、分區(qū)及其依賴對象。表空間導(dǎo)出模式(TablespaceMode):通過參數(shù)TABLESPACES指定,導(dǎo)出指定表空間中所有表及其依賴對象的定義和數(shù)據(jù)。傳輸表空間導(dǎo)出模式(TransportableTablespace):通過參數(shù)TRANSPORT_TABLESPACES指定,導(dǎo)出指定表空間中所有表及其依賴對象的定義。通過該導(dǎo)出模式以及相應(yīng)導(dǎo)入模式,可以實(shí)現(xiàn)將一個(gè)數(shù)據(jù)庫表空間的數(shù)據(jù)文件復(fù)制到另一個(gè)數(shù)據(jù)庫中。76(2)Expdp導(dǎo)出模式全庫導(dǎo)出模式(FullExpor(3)Expdp幫助及參數(shù)
獲取Expdp幫助信息C:\>expdpHELP=YExpdp參數(shù)77(3)Expdp幫助及參數(shù)獲取Expdp幫助信息77(4)Expdp應(yīng)用實(shí)例
命令行方式導(dǎo)出:表導(dǎo)出模式導(dǎo)出scott模式下的emp表和dept表,轉(zhuǎn)儲(chǔ)文件名稱為emp_dept.dmp,日志文件命名為emp_dept.log,作業(yè)命名為emp_dept_job,導(dǎo)出操作啟動(dòng)3個(gè)進(jìn)程。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=emp_dept.dmpTABLES=emp,deptLOGFILE=emp_dept.logJOB_NAME=emp_dept_jobPARALLEL=3命令行方式導(dǎo)出:模式導(dǎo)出模式。導(dǎo)出scott模式下的所有對象及其數(shù)據(jù)。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=scott.dmpLOGFILE=scott.logSCHEMAS=scottJOB_NAME=exp_scott_schema78(4)Expdp應(yīng)用實(shí)例命令行方式導(dǎo)出:表導(dǎo)出模式78命令行方式導(dǎo)出:表空間導(dǎo)出模式。導(dǎo)出EXAMPLE,USERS表空間中的所有對象及其數(shù)據(jù)。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=tsp.dmpTABLESPACES=example,users命令行方式導(dǎo)出:傳輸表空間導(dǎo)出模式導(dǎo)出EXAMPLE,USERS表空間中數(shù)據(jù)對象的定義信息。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=tts.dmpTRANSPORT_TABLESPACES=example,usersTRANSPORT_FULL_CHECK=YLOGFILE=tts.log注意:當(dāng)前用戶不能使用傳輸表空間導(dǎo)出模式導(dǎo)出自己的默認(rèn)表空間。79命令行方式導(dǎo)出:表空間導(dǎo)出模式。79命令行方式導(dǎo)出:數(shù)據(jù)庫導(dǎo)出模式將當(dāng)前數(shù)據(jù)全部導(dǎo)出,不寫日志文件。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=expfull.dmpFULL=YNOLOGFILE=Y命令行方式導(dǎo)出:按條件查詢導(dǎo)出導(dǎo)出scott.emp表中部門號(hào)大于10,且工資大于2000的員工信息。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=exp2.dmpTABLES=empQUERY='emp:"WHEREdeptno=10ANDsal>2000"'NOLOGFILE=Y80命令行方式導(dǎo)出:數(shù)據(jù)庫導(dǎo)出模式80參數(shù)文件方式導(dǎo)出首先創(chuàng)建一個(gè)名為scott.txt的參數(shù)文件,并存放到d:\backup目錄下,其內(nèi)容為:SCHEMAS=scottDUMPFILE=filter.dmpDIRECTORY=dumpdirLOGFILE=filter.logINCLUDE=TABLE:"IN('EMP','DEPT')"INCLUDE=INDEX:"LIKE'EMP%'"INCLUDE=PROCEDURE然后在命令行中執(zhí)行下列命令。C:\>expdpscott/tigerPARFILE=d:\scott.txt
81參數(shù)文件方式導(dǎo)出81交互命令方式導(dǎo)出在當(dāng)前運(yùn)行作業(yè)的終端中按Ctrl+C組合鍵,進(jìn)入交互式命令狀態(tài);在另一個(gè)非運(yùn)行導(dǎo)出作業(yè)的終端中,通過導(dǎo)出作業(yè)名稱來進(jìn)行導(dǎo)出作業(yè)的管理。82交互命令方式導(dǎo)出82示例執(zhí)行一個(gè)作業(yè)。C:\>expdpscott/tigerFULL=YDIRECTORY=dumpdirDUMPFILE=fulldb1.dmp,fulldb2.dmpFILESIZE=2GPARALLEL=3LOGFILE=expfull.logJOB_NAME=expfull作業(yè)開始執(zhí)行后,按Ctrl+C組合鍵。在交互模式中輸入導(dǎo)出作業(yè)的管理命令,根據(jù)提示進(jìn)行操作。
Export>STOP_JOB=IMMEDIATEAreyousureyouwishtostopthisjob([Y]/N):Y83示例8311.3.3使用Impdp導(dǎo)入數(shù)據(jù)Impdp調(diào)用接口Impdp導(dǎo)入模式Impdp幫助及參數(shù)Impdp應(yīng)用實(shí)例8411.3.3使用Impdp導(dǎo)入數(shù)據(jù)Impdp調(diào)用接口84(1)Impdp調(diào)用接口
命令行接口(Command-LineInterface)參數(shù)文件接口(ParameterFileInterface)交互式命令接口(Interactive-CommandInterface)85(1)Impdp調(diào)用接口命令行接口(Command-Lin(2)Impdp導(dǎo)入模式全庫導(dǎo)入模式(FullImportMode)模式導(dǎo)入模式(SchemaMode)表導(dǎo)入模式(TableMode)表空間導(dǎo)入模式(TablespaceMode)傳輸表空間導(dǎo)入模式(TransportableTablespace)86(2)Impdp導(dǎo)入模式全庫導(dǎo)入模式(FullImport(3)Impdp幫助及參數(shù)
在操作系統(tǒng)的命令提示符窗口中輸入impdpHELP=Y命令,可以查看Impdp程序的使用、關(guān)鍵字(參數(shù))、交互命令等介紹。87(3)Impdp幫助及參數(shù)在操作系統(tǒng)的命令提示符窗口中(4)Impdp應(yīng)用實(shí)例
命令行方式導(dǎo)入:表導(dǎo)入模式使用邏輯備份文件emp_dept.dmp恢復(fù)scott模式下的emp表和dept表中數(shù)據(jù)。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=emp_dept.dmpTABLES=emp,deptNOLOGFILE=YCONTENT=DATA_ONLY如果表結(jié)構(gòu)也不存在了,則應(yīng)該導(dǎo)入表的定義以及數(shù)據(jù)。
C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=emp_dept.dmpTABLES=emp,deptNOLOGFILE=Y88(4)Impdp應(yīng)用實(shí)例命令行方式導(dǎo)入:表導(dǎo)入模式8命令行方式導(dǎo)入:模式導(dǎo)入模式使用備份文件scott.dmp恢復(fù)scott模式。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=scott.dmpSCHEMAS=scottJOB_NAME=imp_scott_schema如果要將一個(gè)備份模式的所有對象導(dǎo)入另一個(gè)模式中,可以使用REMAP_SCHEMAN參數(shù)設(shè)置。例如,將備份的scott模式對象導(dǎo)入oe模式中。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=scott.dmpLOGFILE=scott.logREMAP_SCHEMA=scott:oeJOB_NAME=imp_oe_schema89命令行方式導(dǎo)入:模式導(dǎo)入模式89命令行方式導(dǎo)入:表空間導(dǎo)入模式利用EXAMPLE,USERS表空間的邏輯備份tsp.dmp恢復(fù)USERS,EXAMPLE表空間。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=tsp.dmpTABLESPACES=example,users如果要將備份的表空間導(dǎo)入另一個(gè)表空間中,可以使用REMAP_TABLESPACE參數(shù)設(shè)置。例如,將USERS表空間的邏輯備份導(dǎo)入IMP_TBS表空間,命令為C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=tsp.dmpREMAP_TABLESPACE=users:imptbs90命令行方式導(dǎo)入:表空間導(dǎo)入模式90命令行方式導(dǎo)入:傳輸表空間導(dǎo)入模式。將表空間USERS導(dǎo)入數(shù)據(jù)庫鏈接source_dblink所對應(yīng)的遠(yuǎn)程數(shù)據(jù)庫中。C:\>impdpscott/tigerDIRECTORY=dumpdirNETWORK_LINK=source_dblinkTRANSPORT_TABLESPACES=usersTRANSPORT_FULL_CHECK=NTRANSPORT_DATAFILES='D:\ORACLE\USERS01.DBF'
91命令行方式導(dǎo)入:傳輸表空間導(dǎo)入模式。91命令行方式導(dǎo)入:數(shù)據(jù)庫導(dǎo)入模式利用完整數(shù)據(jù)庫的邏輯備份恢復(fù)數(shù)據(jù)庫。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=expfull.dmpFULL=YNOLOGFILE=Y命令行方式導(dǎo)入:按條件查詢導(dǎo)入C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=emp_dept.dmpTABLES=emp,deptQUERY='emp:"WHEREdeptno=20ANDsal>2000"'NOLOGFILE=Y92命令行方式導(dǎo)入:數(shù)據(jù)庫導(dǎo)入模式92命令行方式導(dǎo)入:追加導(dǎo)入如果表中已經(jīng)存在數(shù)據(jù),可以利用備份向表中追加數(shù)據(jù)。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=emp_dept.dmpTABLES=empTABLE_EXISTS_ACTION=APPEND93命令行方式導(dǎo)入:追加導(dǎo)入93參數(shù)文件方式導(dǎo)入首先創(chuàng)建一個(gè)名為empdept.txt的參數(shù)文件,并存放到d:\backup目錄下,其內(nèi)容為TABLES=emp,deptDIRECTORY=dumpdirDUMPFILE=emp_dept.dmpPARALLEL=3然后在命令行中執(zhí)行下列命令就可以實(shí)現(xiàn)數(shù)據(jù)的導(dǎo)入操作。C:\>impdpscott/tigerPARFILE=d:\empdetp.txt94參數(shù)文件方式導(dǎo)入94交互命令方式導(dǎo)入與Expdp交互執(zhí)行方式類似,在Impdp命令執(zhí)行作業(yè)導(dǎo)入的過程中,可以使用Impdp的交互命令對當(dāng)前運(yùn)行的導(dǎo)入作業(yè)進(jìn)行控制管理。95交互命令方式導(dǎo)入9511.3.4使用OEM導(dǎo)出、導(dǎo)入數(shù)據(jù)創(chuàng)建目錄對象數(shù)據(jù)導(dǎo)出數(shù)據(jù)導(dǎo)入9611.3.4使用OEM導(dǎo)出、導(dǎo)入數(shù)據(jù)創(chuàng)建目錄對象96(1)創(chuàng)建目錄對象
97(1)創(chuàng)建目錄對象9798989999100100(2)數(shù)據(jù)導(dǎo)出
101(2)數(shù)據(jù)導(dǎo)出101102102103103104104105105106106107107108108(3)數(shù)據(jù)導(dǎo)入109(3)數(shù)據(jù)導(dǎo)入109110110111111112112113113114114總結(jié)備份與恢復(fù)的重要性和概念備份與恢復(fù)的類型數(shù)據(jù)庫的冷備份數(shù)據(jù)庫的熱備份數(shù)據(jù)庫完全恢復(fù)數(shù)據(jù)不完全恢復(fù)邏輯備份和恢復(fù)115總結(jié)備份與恢復(fù)的重要性和概念115第11章數(shù)據(jù)庫備份與恢復(fù)116第11章數(shù)據(jù)庫備份與恢復(fù)1本章內(nèi)容備份與恢復(fù)概述物理備份與恢復(fù)邏輯備份與恢復(fù)117本章內(nèi)容備份與恢復(fù)概述2本章要求了解備份與恢復(fù)的重要性和概念掌握數(shù)據(jù)庫的冷備份方法掌握數(shù)據(jù)庫的熱備份方法掌握數(shù)據(jù)庫完全恢復(fù)方法掌握數(shù)據(jù)不完全恢復(fù)方法掌握邏輯備份和恢復(fù)方法118本章要求了解備份與恢復(fù)的重要性和概念311.1備份與恢復(fù)概述備份與恢復(fù)的基本概念Oracle數(shù)據(jù)庫故障類型及恢復(fù)措施備份的原則與策略恢復(fù)的原則與策略11911.1備份與恢復(fù)概述備份與恢復(fù)的基本概念411.1.1備份與恢復(fù)的概念備份與恢復(fù)的作用備份的概念與類型恢復(fù)的概念、類型與恢復(fù)機(jī)制12011.1.1備份與恢復(fù)的概念備份與恢復(fù)的作用5(1)備份與恢復(fù)的作用數(shù)據(jù)庫系統(tǒng)在運(yùn)行中可能發(fā)生故障,輕則導(dǎo)致事務(wù)異常中斷,影響數(shù)據(jù)庫中數(shù)據(jù)的正確性,重則破壞數(shù)據(jù)庫,使數(shù)據(jù)庫中的數(shù)據(jù)部分或全部丟失。數(shù)據(jù)庫備份與恢復(fù)的目的就是為了保證在各種故障發(fā)生后,數(shù)據(jù)庫中的數(shù)據(jù)都能從錯(cuò)誤狀態(tài)恢復(fù)到某種邏輯一致的狀態(tài)。121(1)備份與恢復(fù)的作用數(shù)據(jù)庫系統(tǒng)在運(yùn)行中可能發(fā)生故障,輕則導(dǎo)(2)備份的概念與類型概念數(shù)據(jù)庫備份就是對數(shù)據(jù)庫中部分或全部數(shù)據(jù)進(jìn)行復(fù)制,形成副本,存放到一個(gè)相對獨(dú)立的設(shè)備上,如磁盤、磁帶,以備將來數(shù)據(jù)庫出現(xiàn)故障時(shí)使用。根據(jù)數(shù)據(jù)備份方式的不同,數(shù)據(jù)庫備份分為:
物理備份:將組成數(shù)據(jù)庫的數(shù)據(jù)文件、重做日志文件、控制文件、初始化參數(shù)文件等操作系統(tǒng)文件進(jìn)行復(fù)制,將形成的副本保存到與當(dāng)前系統(tǒng)獨(dú)立的磁盤或磁帶上。邏輯備份是指利用Oracle提供的導(dǎo)出工具(如Expdp,Export)將數(shù)據(jù)庫中的數(shù)據(jù)抽取出來存放到一個(gè)二進(jìn)制文件中。122(2)備份的概念與類型概念7根據(jù)數(shù)據(jù)庫備份時(shí)是否關(guān)閉數(shù)據(jù)庫服務(wù)器,物理備份分為:冷備份又稱停機(jī)備份,是指在關(guān)閉數(shù)據(jù)庫的情況下將所有的數(shù)據(jù)庫文件復(fù)制到另一個(gè)磁盤或磁帶上去。熱備份又稱聯(lián)機(jī)備份,是指在數(shù)據(jù)庫運(yùn)行的情況下對數(shù)據(jù)庫進(jìn)行的備份。要進(jìn)行熱備份,數(shù)據(jù)庫必須運(yùn)行在歸檔日志模式下。123根據(jù)數(shù)據(jù)庫備份時(shí)是否關(guān)閉數(shù)據(jù)庫服務(wù)器,物理備份分為:8根據(jù)數(shù)據(jù)庫備份的規(guī)模不同,物理備份可分為:完全備份:指對整個(gè)數(shù)據(jù)庫進(jìn)行備份,包括所有的物理文件。部分備份:對部分?jǐn)?shù)據(jù)文件、表空間、控制文件、歸檔重做日志文件等進(jìn)行備份。根據(jù)數(shù)據(jù)庫是否運(yùn)行在歸檔模式,物理備份可分為:歸檔備份非歸檔備份124根據(jù)數(shù)據(jù)庫備份的規(guī)模不同,物理備份可分為:9(3)恢復(fù)的概念、類型與恢復(fù)機(jī)制概念數(shù)據(jù)庫恢復(fù)是指在數(shù)據(jù)庫發(fā)生故障時(shí),使用數(shù)據(jù)庫備份還原數(shù)據(jù)庫,使數(shù)據(jù)庫恢復(fù)到無故障狀態(tài)。根據(jù)數(shù)據(jù)庫恢復(fù)時(shí)使用的備份不同,恢復(fù)分為:所謂的物理恢復(fù)就是,利用物理備份來恢復(fù)數(shù)據(jù)庫,即利用物理備份文件恢復(fù)損毀文件,是在操作系統(tǒng)級(jí)別上進(jìn)行的。邏輯恢復(fù)是指利用邏輯備份的二進(jìn)制文件,使用Oracle提供的導(dǎo)入工具(如Impdp,Import)將部分或全部信息重新導(dǎo)入數(shù)據(jù)庫,恢復(fù)損毀或丟失的數(shù)據(jù)。根據(jù)數(shù)據(jù)庫恢復(fù)程度的不同,恢復(fù)可分為:完全恢復(fù):利用備份使數(shù)據(jù)庫恢復(fù)到出現(xiàn)故障時(shí)的狀態(tài)。不完全恢復(fù):利用備份使數(shù)據(jù)庫恢復(fù)到出現(xiàn)故障時(shí)刻之前的某個(gè)狀態(tài)。125(3)恢復(fù)的概念、類型與恢復(fù)機(jī)制概念10數(shù)據(jù)庫的恢復(fù)分3個(gè)步驟進(jìn)行:首先使用一個(gè)完整備份將數(shù)據(jù)庫恢復(fù)到備份時(shí)刻的狀態(tài);然后利用歸檔日志文件和聯(lián)機(jī)重做日志文件中的日志信息,采用前滾技術(shù)(RollForward)重做備份以后已經(jīng)完成并提交的事物;最后利用回滾技術(shù)(RollBack)取消發(fā)生故障時(shí)已寫入日志文件但沒有提交的事物,將數(shù)據(jù)庫恢復(fù)到故障時(shí)刻的狀態(tài)。126數(shù)據(jù)庫的恢復(fù)分3個(gè)步驟進(jìn)行:11在T1和T3時(shí)刻進(jìn)行了兩次數(shù)據(jù)庫備份,在T5時(shí)刻數(shù)據(jù)庫出現(xiàn)故障。如果使用T1時(shí)刻的備份1恢復(fù)數(shù)據(jù)庫,則只能恢復(fù)到T1時(shí)刻的狀態(tài),即不完全恢復(fù);如果使用T3時(shí)刻的備份2恢復(fù)數(shù)據(jù)庫,則可以恢復(fù)到T3時(shí)刻到T5時(shí)刻的任意狀態(tài)(歸檔日志與聯(lián)機(jī)日志)。
127在T1和T3時(shí)刻進(jìn)行了兩次數(shù)據(jù)庫備份,在T5時(shí)刻數(shù)據(jù)庫出現(xiàn)故11.1.2Oracle數(shù)據(jù)庫故障類型及
恢復(fù)措施語句故障進(jìn)程故障用戶錯(cuò)誤實(shí)例失敗網(wǎng)絡(luò)故障介質(zhì)故障12811.1.2Oracle數(shù)據(jù)庫故障類型及
恢復(fù)措施語句故語句故障語句故障是指執(zhí)行SQL語句時(shí)發(fā)生的故障。例如,對不存在的表執(zhí)行SELECT操作、向已無空間可用的表中執(zhí)行INSERT操作等都會(huì)發(fā)生語句故障,Oracle將返回給用戶一個(gè)錯(cuò)誤信息。語句故障通常不需要DBA干預(yù),Oracle會(huì)自動(dòng)回滾產(chǎn)生錯(cuò)誤的SQL語句操作。進(jìn)程故障進(jìn)程故障是指用戶進(jìn)程、服務(wù)器進(jìn)程或數(shù)據(jù)庫后臺(tái)進(jìn)程由于某種原因而意外終止,此時(shí)該進(jìn)程將無法使用,但不影響其他進(jìn)程的運(yùn)行。Oracle的后臺(tái)進(jìn)程PMON能夠自動(dòng)監(jiān)測并恢復(fù)故障進(jìn)程。如果該進(jìn)程無法恢復(fù),則需要DBA關(guān)閉并重新啟動(dòng)數(shù)據(jù)庫實(shí)例。129語句故障14用戶錯(cuò)誤用戶錯(cuò)誤是指用戶在使用數(shù)據(jù)庫時(shí)產(chǎn)生的錯(cuò)誤。例如,用戶意外刪除某個(gè)表或表中的數(shù)據(jù)。用戶錯(cuò)誤無法由Oracle自動(dòng)進(jìn)行恢復(fù),管理員可以使用邏輯備份來恢復(fù)。實(shí)例失敗實(shí)例失敗是指由于某種原因?qū)е聰?shù)據(jù)庫實(shí)例無法正常工作。例如,突然斷電導(dǎo)致數(shù)據(jù)庫服務(wù)器立即關(guān)閉、數(shù)據(jù)庫服務(wù)器硬件故障導(dǎo)致操作系統(tǒng)無法運(yùn)行等。實(shí)例失敗時(shí),需要進(jìn)行實(shí)例重新啟動(dòng),在實(shí)例重新啟動(dòng)的過程中,數(shù)據(jù)庫后臺(tái)進(jìn)程SMON會(huì)自動(dòng)對實(shí)例進(jìn)行恢復(fù)。130用戶錯(cuò)誤15網(wǎng)絡(luò)故障網(wǎng)絡(luò)故障是指由于通信軟件或硬件故障,導(dǎo)致應(yīng)用程序或用戶與數(shù)據(jù)庫服務(wù)器之間的通信中斷。數(shù)據(jù)庫的后臺(tái)進(jìn)程PMON將自動(dòng)監(jiān)測并處理意外中斷的用戶進(jìn)程和服務(wù)器進(jìn)程。介質(zhì)故障介質(zhì)故障是指由于各種原因引起的數(shù)據(jù)庫數(shù)據(jù)文件、控制文件或重做日志文件的損壞,導(dǎo)致系統(tǒng)無法正常運(yùn)行。例如,磁盤損壞導(dǎo)致文件系統(tǒng)被破壞。介質(zhì)故障是數(shù)據(jù)庫備份與恢復(fù)中主要關(guān)心的故障類型,需要管理員提前做好數(shù)據(jù)庫的備份,否則將導(dǎo)致數(shù)據(jù)庫無法恢復(fù)。131網(wǎng)絡(luò)故障1611.1.3備份原則與策略在剛建立數(shù)據(jù)庫時(shí),應(yīng)該立即進(jìn)行數(shù)據(jù)庫的完全備份;將所有的數(shù)據(jù)庫備份保存在一個(gè)獨(dú)立磁盤上(必須是與當(dāng)前數(shù)據(jù)庫系統(tǒng)正在使用的文件不同的磁盤);應(yīng)該保持控制文件的多路復(fù)用,且控制文件的副本應(yīng)該存放在不同磁盤控制器下的不同磁盤設(shè)備上;應(yīng)該保持多個(gè)聯(lián)機(jī)日志文件組,每個(gè)組中至少應(yīng)該保持兩個(gè)日志成員,同一日志組的多個(gè)成員應(yīng)該分散存放在不同磁盤上;至少保證兩個(gè)歸檔重做日志文件的歸檔目標(biāo),不同歸檔目標(biāo)應(yīng)該分散于不同磁盤;如果條件允許,盡量保證數(shù)據(jù)庫運(yùn)行于歸檔模式;根據(jù)數(shù)據(jù)庫數(shù)據(jù)變化的頻率情況確定數(shù)據(jù)庫備份規(guī)律;13211.1.3備份原則與策略在剛建立數(shù)據(jù)庫時(shí),應(yīng)該立即進(jìn)行在歸檔模式下,當(dāng)數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化時(shí),如創(chuàng)建或刪除表空間、添加數(shù)據(jù)文件、重做日志文件等,應(yīng)該備份數(shù)據(jù)庫的控制文件;在非歸檔模式下,當(dāng)數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化時(shí),應(yīng)該進(jìn)行數(shù)據(jù)庫的完全備份;在歸檔模式下,對于經(jīng)常使用的表空間,可以采用表空間備份方法提高備份效率;在歸檔模式下,通常不需要對聯(lián)機(jī)重做日志文件進(jìn)行備份;使用RESETLOGS方式打開數(shù)據(jù)庫后,應(yīng)該進(jìn)行一個(gè)數(shù)據(jù)庫的完全備份;對于重要的表中的數(shù)據(jù),可以采用邏輯備份方式進(jìn)行備份。133在歸檔模式下,當(dāng)數(shù)據(jù)庫結(jié)構(gòu)發(fā)生變化時(shí),如創(chuàng)建或刪除表空間、添11.1.4恢復(fù)原則與策略根據(jù)數(shù)據(jù)庫介質(zhì)故障原因,確定采用完全介質(zhì)恢復(fù)還是不完全介質(zhì)恢復(fù);如果數(shù)據(jù)庫運(yùn)行在非歸檔模式,則當(dāng)介質(zhì)故障發(fā)生時(shí),只能進(jìn)行數(shù)據(jù)庫的不完全恢復(fù),將數(shù)據(jù)庫恢復(fù)到最近的備份時(shí)刻的狀態(tài);如果數(shù)據(jù)庫運(yùn)行在歸檔模式,則當(dāng)一個(gè)或多個(gè)數(shù)據(jù)文件損壞時(shí),可以使用備份的數(shù)據(jù)文件進(jìn)行完全或不完全恢復(fù)數(shù)據(jù)庫;如果數(shù)據(jù)庫運(yùn)行在歸檔模式,則當(dāng)數(shù)據(jù)庫的控制文件損壞時(shí),可以使用備份的控制文件實(shí)現(xiàn)數(shù)據(jù)庫的不完全恢復(fù);如果數(shù)據(jù)庫運(yùn)行在歸檔模式,則當(dāng)數(shù)據(jù)庫的聯(lián)機(jī)日志文件損壞時(shí),可以使用備份的數(shù)據(jù)文件和聯(lián)機(jī)重做日志文件不完全恢復(fù)數(shù)據(jù)庫;如果執(zhí)行了不完全恢復(fù),則當(dāng)重新打開數(shù)據(jù)庫時(shí)應(yīng)該使用RESETLOGS選項(xiàng)。13411.1.4恢復(fù)原則與策略根據(jù)數(shù)據(jù)庫介質(zhì)故障原因,確定采11.2物理備份與恢復(fù)冷備份熱備份非歸檔模式下數(shù)據(jù)庫的恢復(fù)歸檔模式下數(shù)據(jù)庫的完全恢復(fù)歸檔模式下數(shù)據(jù)庫的不完全恢復(fù)利用OEM進(jìn)行物理備份與恢復(fù)13511.2物理備份與恢復(fù)冷備份201362111.2.1冷備份概述關(guān)閉數(shù)據(jù)庫實(shí)例。用操作系統(tǒng)的實(shí)用工具備份所有的物理文件,包括數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件等。13711.2.1冷備份概述22關(guān)閉數(shù)據(jù)庫,開始備份故障時(shí)刻
備份恢復(fù)
重裝備份副本恢復(fù)丟失數(shù)據(jù)備份完成如果沒有啟用歸檔模式,數(shù)據(jù)庫不能恢復(fù)到備份完成后的任意時(shí)刻。如果啟用歸檔模式,從冷備份結(jié)束后到出現(xiàn)故障這段時(shí)間的數(shù)據(jù)庫恢復(fù),可以利用聯(lián)機(jī)日志文件和歸檔日志文件實(shí)現(xiàn)。138關(guān)閉數(shù)據(jù)庫,故障時(shí)刻備份恢復(fù)重裝備份副本恢復(fù)丟失數(shù)據(jù)備冷備份步驟確定數(shù)據(jù)庫各種物理文件關(guān)閉數(shù)據(jù)庫備份所有相關(guān)的數(shù)據(jù)庫物理文件重新啟動(dòng)數(shù)據(jù)庫139冷備份步驟24啟動(dòng)SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)庫查詢當(dāng)前數(shù)據(jù)庫所有數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件的位置。SELECTfile_nameFROMdba_data_files;SELECTmemberFROMv$logfile;SELECTvalueFROMv$parameterWHEREname='control_files';關(guān)閉數(shù)據(jù)庫SHUTDOWNIMMEDIATE復(fù)制所有數(shù)據(jù)文件、聯(lián)機(jī)重做日志文件以及控制文件到備份磁盤。重新啟動(dòng)數(shù)據(jù)庫STARTUP140啟動(dòng)SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)庫2511.2.2熱備份數(shù)據(jù)庫完全熱備份的步驟:啟動(dòng)SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)庫將數(shù)據(jù)庫設(shè)置為歸檔模式以表空間為單位,進(jìn)行數(shù)據(jù)文件備份備份控制文件備份其他物理文件14111.2.2熱備份數(shù)據(jù)庫完全熱備份的步驟:26備份數(shù)據(jù)文件查看當(dāng)前數(shù)據(jù)庫有哪些表空間,以及每個(gè)表空間中有哪些數(shù)據(jù)文件。SELECTtablespace_name,file_nameFROMdba_data_filesORDERBYtablespace_name;分別對每個(gè)表空間中的數(shù)據(jù)文件進(jìn)行備份,其方法為將需要備份的表空間(如USERS)設(shè)置為備份狀態(tài)。ALTERTABLESPACEUSERSBEGINBACKUP;將表空間中所有的數(shù)據(jù)文件復(fù)制到備份磁盤。結(jié)束表空間的備份狀態(tài)。ALTERTABLESPACEUSERSENDBACKUP;對數(shù)據(jù)庫中所有表空間分別采用該步驟進(jìn)行備份。142備份數(shù)據(jù)文件27備份控制文件當(dāng)執(zhí)行了下列操作時(shí)應(yīng)該進(jìn)行控制文件備份ALTERDATABASEADDLOGFILEALERTDATABASEADDLOGFILEMEMBERALTERDATABASERENAMEFILEALTERDATABASEDROPLOGFILEGROUPALTERDATABASEDROPLOGFILEMEMBERCREATETABLESPACEALTERTABLESPACEADDDATAFILEALTERTABLESPACERENAMEDATAFILEDROPTABLESPACE143備份控制文件28控制文件備份方法將控制文件備份為二進(jìn)制文件。ALTERDATABASEBACKUPCONTROLFILETO'D:\ORACLE\BACKUP\CONTROL.BKP';
將控制文件備份為文本文件。ALTERDATABASEBACKUPCONTROLFILETOTRACE;
144控制文件備份方法29其他文件的備份歸檔當(dāng)前的聯(lián)機(jī)重做日志文件。ALTERSYSTEMARCHIVELOGCURRENT;備份歸檔重做日志文件,將所有的歸檔重做日志文件復(fù)制到備份磁盤中。備份初始化參數(shù)文件,將初始化參數(shù)文件復(fù)制到備份磁盤中。145其他文件的備份3011.2.3非歸檔模式下數(shù)據(jù)庫的恢復(fù)非歸檔模式下數(shù)據(jù)庫的恢復(fù)主要指利用非歸檔模式下的冷備份恢復(fù)數(shù)據(jù)庫。步驟為:關(guān)閉數(shù)據(jù)庫。SHUTDOWNIMMEDIATE將備份的所有數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件還原到原來所在的位置。重新啟動(dòng)數(shù)據(jù)庫。STARTUP注意非歸檔模式下的數(shù)據(jù)庫恢復(fù)是不完全恢復(fù),只能將數(shù)據(jù)庫恢復(fù)到最近一次完全冷備份的狀態(tài)。
14611.2.3非歸檔模式下數(shù)據(jù)庫的恢復(fù)非歸檔模式下數(shù)據(jù)庫的11.2.4歸檔模式下數(shù)據(jù)庫的完全恢復(fù)概述數(shù)據(jù)庫級(jí)完全恢復(fù)表空間級(jí)完全恢復(fù)數(shù)據(jù)文件級(jí)完全恢復(fù)數(shù)據(jù)庫完全恢復(fù)示例14711.2.4歸檔模式下數(shù)據(jù)庫的完全恢復(fù)概述32(1)概述概念歸檔模式下數(shù)據(jù)庫的完全恢復(fù)是指歸檔模式下一個(gè)或多個(gè)數(shù)據(jù)文件損壞,利用熱備份的數(shù)據(jù)文件替換損壞的數(shù)據(jù)文件,再結(jié)合歸檔日志文件和聯(lián)機(jī)重做日志文件,采用前滾技術(shù)重做自備份以來的所有改動(dòng),采用回滾技術(shù)回滾未提交的操作,以恢復(fù)到數(shù)據(jù)庫故障時(shí)刻的狀態(tài)。148(1)概述概念33
恢復(fù)的級(jí)別數(shù)據(jù)庫級(jí)完全恢復(fù):主要應(yīng)用于所有或多數(shù)數(shù)據(jù)文件損壞的恢復(fù);表空間級(jí)完全恢復(fù):對指定表空間中的數(shù)據(jù)文件進(jìn)行恢復(fù);數(shù)據(jù)文件級(jí)完全恢復(fù):是針對特定的數(shù)據(jù)文件進(jìn)行恢復(fù)。
注意數(shù)據(jù)庫級(jí)的完全恢復(fù)只能在數(shù)據(jù)庫裝載但沒有打開的狀態(tài)下進(jìn)行,而表空間級(jí)完全恢復(fù)和數(shù)據(jù)文件級(jí)完全恢復(fù)可以在數(shù)據(jù)庫處于裝載狀態(tài)或打開的狀態(tài)下進(jìn)行。
149恢復(fù)的級(jí)別34歸檔模式下數(shù)據(jù)庫完全恢復(fù)的基本語法:RECOVER[AUTOMATIC][FROM'location'][DATABASE|TABLESPACEtspname|DATAFILEdfname]參數(shù)說明
AUTOMATIC:進(jìn)行自動(dòng)恢復(fù),不需要DBA提供重做日志文件名稱;location:制定歸檔重做日志文件的位置。默認(rèn)為數(shù)據(jù)庫默認(rèn)的歸檔路徑。150歸檔模式下數(shù)據(jù)庫完全恢復(fù)的基本語法:35(2)數(shù)據(jù)庫級(jí)完全恢復(fù)
數(shù)據(jù)庫級(jí)完全恢復(fù)的步驟:如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT利用備份的數(shù)據(jù)文件還原所有損壞的數(shù)據(jù)文件。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)庫恢復(fù)命令。RECOVERDATABASE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;
151(2)數(shù)據(jù)庫級(jí)完全恢復(fù)數(shù)據(jù)庫級(jí)完全恢復(fù)的步驟:36(3)表空間級(jí)完全恢復(fù)
以EXAMPLE表空間的數(shù)據(jù)文件example01.dbf損壞為例模擬表空級(jí)的完全恢復(fù)。數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)
152(3)表空間級(jí)完全恢復(fù)以EXAMPLE表空間的數(shù)據(jù)文件e數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行表空間恢復(fù)命令。RECOVERTABLESPACEEXAMPLE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;153數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)38數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)①如果數(shù)據(jù)庫已經(jīng)關(guān)閉,則將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT②將損壞的數(shù)據(jù)文件設(shè)置為脫機(jī)狀態(tài)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'OFFLINE;③打開數(shù)據(jù)庫。
ALTERDATABASEOPEN;④將損壞的數(shù)據(jù)文件所在的表空間脫機(jī)。ALTERTABLESPACEEXAMPLEOFFLINEFORRECOVER;154數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)39⑤利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。⑥執(zhí)行表空間恢復(fù)命令。RECOVERTABLESPACEEXAMPLE;⑦將表空間聯(lián)機(jī)。ALTERTABLESPACEEXAMPLEONLINE;如果數(shù)據(jù)文件損壞時(shí)數(shù)據(jù)庫正處于打開狀態(tài),則可以直接執(zhí)行步驟(4)~(7)。155⑤利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)(4)數(shù)據(jù)文件級(jí)完全恢復(fù)
以數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\example01.dbf損壞為例模擬數(shù)據(jù)文件級(jí)的完全恢復(fù)。數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)156(4)數(shù)據(jù)文件級(jí)完全恢復(fù)以數(shù)據(jù)文件D:\oracle\pr數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)文件恢復(fù)命令。RECOVERDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF';將數(shù)據(jù)文件聯(lián)機(jī)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'ONLINE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;157數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)42數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)如果數(shù)據(jù)庫已經(jīng)關(guān)閉,則將數(shù)據(jù)庫啟動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT將損壞的數(shù)據(jù)文件設(shè)置為脫機(jī)狀態(tài)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'OFFLINE;打開數(shù)據(jù)庫。
ALTERDATABASEOPEN;利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。158數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)43執(zhí)行數(shù)據(jù)文件恢復(fù)命令。RECOVERDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF';將數(shù)據(jù)文件聯(lián)機(jī)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'ONLINE;如果數(shù)據(jù)文件損壞時(shí)數(shù)據(jù)庫正處于打開狀態(tài),則可
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代農(nóng)技在醫(yī)療保健領(lǐng)域的創(chuàng)新應(yīng)用以煙草種植為例
- 匯報(bào)在項(xiàng)目管理中的重要作用
- 現(xiàn)代市場營銷中的網(wǎng)絡(luò)直播工具選擇與應(yīng)用
- 現(xiàn)代商業(yè)項(xiàng)目中的綠色建筑策略
- Unit 3 Transportation Period 1(說課稿)-2024-2025學(xué)年人教新起點(diǎn)版英語四年級(jí)上冊
- 2024-2025學(xué)年高中地理上學(xué)期第十三周 中國地理分區(qū) 第一節(jié) 北方地區(qū)說課稿
- 2024年三年級(jí)品社下冊《這周我當(dāng)家》說課稿 遼師大版
- 5 數(shù)學(xué)廣角 - 鴿巢問題(說課稿)-2023-2024學(xué)年六年級(jí)下冊數(shù)學(xué)人教版
- 16 表里的生物(說課稿)-2023-2024學(xué)年統(tǒng)編版語文六年級(jí)下冊
- 2023九年級(jí)數(shù)學(xué)下冊 第24章 圓24.4 直線與圓的位置關(guān)系第2課時(shí) 切線的判定定理說課稿 (新版)滬科版
- 2025-2030年中國納米氧化鋁行業(yè)發(fā)展前景與投資戰(zhàn)略研究報(bào)告新版
- 教育強(qiáng)國建設(shè)規(guī)劃綱要(2024-2035年)要點(diǎn)解讀(教育是強(qiáng)國建設(shè)民族復(fù)興之基)
- 2025年度正規(guī)離婚協(xié)議書電子版下載服務(wù)
- 2025年貴州蔬菜集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 煤礦安全生產(chǎn)方針及法律法規(guī)課件
- 2025年教科室工作計(jì)劃樣本(四篇)
- 2024年版古董古玩買賣合同:古玩交易稅費(fèi)及支付規(guī)定
- 幼兒園費(fèi)用報(bào)銷管理制度
- 【7歷期末】安徽省宣城市2023-2024學(xué)年七年級(jí)上學(xué)期期末考試歷史試題
- 進(jìn)入答辯環(huán)節(jié)的高職應(yīng)用技術(shù)推廣中心申報(bào)書(最終版)
- 三位數(shù)乘一位數(shù)練習(xí)題(精選100道)
評論
0/150
提交評論