Oracle應(yīng)用教程數(shù)據(jù)庫(kù)備份與恢復(fù)_第1頁(yè)
Oracle應(yīng)用教程數(shù)據(jù)庫(kù)備份與恢復(fù)_第2頁(yè)
Oracle應(yīng)用教程數(shù)據(jù)庫(kù)備份與恢復(fù)_第3頁(yè)
Oracle應(yīng)用教程數(shù)據(jù)庫(kù)備份與恢復(fù)_第4頁(yè)
Oracle應(yīng)用教程數(shù)據(jù)庫(kù)備份與恢復(fù)_第5頁(yè)
已閱讀5頁(yè),還剩112頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第16章數(shù)據(jù)庫(kù)備份與恢復(fù)1本章內(nèi)容16.1項(xiàng)目導(dǎo)入——規(guī)劃人力資源管理系統(tǒng)數(shù)據(jù)庫(kù)備份與恢復(fù)16.2備份與恢復(fù)概述16.3物理備份與恢復(fù)16.4邏輯備份與恢復(fù)2本章要求了解備份與恢復(fù)的重要性和概念掌握數(shù)據(jù)庫(kù)的冷備份方法掌握數(shù)據(jù)庫(kù)的熱備份方法掌握數(shù)據(jù)庫(kù)完全恢復(fù)方法掌握數(shù)據(jù)不完全恢復(fù)方法掌握邏輯備份和恢復(fù)方法316.1項(xiàng)目導(dǎo)入——規(guī)劃人力資源管理系統(tǒng)數(shù)據(jù)庫(kù)備份與恢復(fù)為了保證人力資源管理系統(tǒng)數(shù)據(jù)的可恢復(fù)性,需要完成下列工作:制定人力資源管理系統(tǒng)數(shù)據(jù)庫(kù)備份策略與恢復(fù)策略。將人力資源管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)置為歸檔模式。合理設(shè)置人力資源管理系統(tǒng)數(shù)據(jù)庫(kù)歸檔路徑。進(jìn)行一次人力資源管理系統(tǒng)數(shù)據(jù)庫(kù)的完整備份。對(duì)重要表中數(shù)據(jù)進(jìn)行邏輯備份。416.2備份與恢復(fù)概述備份與恢復(fù)的基本概念Oracle數(shù)據(jù)庫(kù)故障類型及恢復(fù)措施備份的原則與策略恢復(fù)的原則與策略516.2.1備份與恢復(fù)的概念備份與恢復(fù)的作用備份的概念與類型恢復(fù)的概念、類型與恢復(fù)機(jī)制6(1)備份與恢復(fù)的作用數(shù)據(jù)庫(kù)系統(tǒng)在運(yùn)行中可能發(fā)生故障,輕則導(dǎo)致事務(wù)異常中斷,影響數(shù)據(jù)庫(kù)中數(shù)據(jù)的正確性,重則破壞數(shù)據(jù)庫(kù),使數(shù)據(jù)庫(kù)中的數(shù)據(jù)部分或全部丟失。數(shù)據(jù)庫(kù)備份與恢復(fù)的目的就是為了保證在各種故障發(fā)生后,數(shù)據(jù)庫(kù)中的數(shù)據(jù)都能從錯(cuò)誤狀態(tài)恢復(fù)到某種邏輯一致的狀態(tài)。7(2)備份的概念與類型概念數(shù)據(jù)庫(kù)備份就是對(duì)數(shù)據(jù)庫(kù)中部分或全部數(shù)據(jù)進(jìn)行復(fù)制,形成副本,存放到一個(gè)相對(duì)獨(dú)立的設(shè)備上,如磁盤、磁帶,以備將來(lái)數(shù)據(jù)庫(kù)出現(xiàn)故障時(shí)使用。根據(jù)數(shù)據(jù)備份方式的不同,數(shù)據(jù)庫(kù)備份分為:

物理備份:將組成數(shù)據(jù)庫(kù)的數(shù)據(jù)文件、重做日志文件、控制文件、初始化參數(shù)文件等操作系統(tǒng)文件進(jìn)行復(fù)制,將形成的副本保存到與當(dāng)前系統(tǒng)獨(dú)立的磁盤或磁帶上。邏輯備份是指利用Oracle提供的導(dǎo)出工具(如Expdp,Export)將數(shù)據(jù)庫(kù)中的數(shù)據(jù)抽取出來(lái)存放到一個(gè)二進(jìn)制文件中。8根據(jù)數(shù)據(jù)庫(kù)備份時(shí)是否關(guān)閉數(shù)據(jù)庫(kù)服務(wù)器,物理備份分為:冷備份又稱停機(jī)備份,是指在關(guān)閉數(shù)據(jù)庫(kù)的情況下將所有的數(shù)據(jù)庫(kù)文件復(fù)制到另一個(gè)磁盤或磁帶上去。熱備份又稱聯(lián)機(jī)備份,是指在數(shù)據(jù)庫(kù)運(yùn)行的情況下對(duì)數(shù)據(jù)庫(kù)進(jìn)行的備份。要進(jìn)行熱備份,數(shù)據(jù)庫(kù)必須運(yùn)行在歸檔日志模式下。9根據(jù)數(shù)據(jù)庫(kù)備份的規(guī)模不同,物理備份可分為:完全備份:指對(duì)整個(gè)數(shù)據(jù)庫(kù)進(jìn)行備份,包括所有的物理文件。部分備份:對(duì)部分?jǐn)?shù)據(jù)文件、表空間、控制文件、歸檔重做日志文件等進(jìn)行備份。根據(jù)數(shù)據(jù)庫(kù)是否運(yùn)行在歸檔模式,物理備份可分為:歸檔備份非歸檔備份10(3)恢恢復(fù)的概概念、類類型與恢恢復(fù)機(jī)制制概念數(shù)據(jù)庫(kù)恢恢復(fù)是指指在數(shù)據(jù)據(jù)庫(kù)發(fā)生生故障時(shí)時(shí),使用用數(shù)據(jù)庫(kù)庫(kù)備份還還原數(shù)據(jù)據(jù)庫(kù),使使數(shù)據(jù)庫(kù)庫(kù)恢復(fù)到到無(wú)故障障狀態(tài)。。根據(jù)數(shù)據(jù)據(jù)庫(kù)恢復(fù)復(fù)時(shí)使用用的備份份不同,,恢復(fù)分分為:所謂的物物理恢復(fù)復(fù)就是,,利用物物理備份份來(lái)恢復(fù)復(fù)數(shù)據(jù)庫(kù)庫(kù),即利利用物理理備份文文件恢復(fù)復(fù)損毀文文件,是是在操作作系統(tǒng)級(jí)級(jí)別上進(jìn)進(jìn)行的。。邏輯恢復(fù)復(fù)是指利利用邏輯輯備份的的二進(jìn)制制文件,,使用Oracle提提供的導(dǎo)導(dǎo)入工具具(如Impdp,Import))將部分分或全部部信息重重新導(dǎo)入入數(shù)據(jù)庫(kù)庫(kù),恢復(fù)復(fù)損毀或或丟失的的數(shù)據(jù)。。根據(jù)數(shù)據(jù)據(jù)庫(kù)恢復(fù)復(fù)程度的的不同,,恢復(fù)可可分為::完全恢復(fù)復(fù):利用用備份使使數(shù)據(jù)庫(kù)庫(kù)恢復(fù)到到出現(xiàn)故故障時(shí)的的狀態(tài)。。不完全恢恢復(fù):利利用備份份使數(shù)據(jù)據(jù)庫(kù)恢復(fù)復(fù)到出現(xiàn)現(xiàn)故障時(shí)時(shí)刻之前前的某個(gè)個(gè)狀態(tài)。。11數(shù)據(jù)庫(kù)的的恢復(fù)分分3個(gè)步步驟進(jìn)行行:首先使用用一個(gè)完完整備份份將數(shù)據(jù)據(jù)庫(kù)恢復(fù)復(fù)到備份份時(shí)刻的的狀態(tài);;然后利用用歸檔日日志文件件和聯(lián)機(jī)機(jī)重做日日志文件件中的日日志信息息,采用用前滾技技術(shù)(RollForward))重做備備份以后后已經(jīng)完完成并提提交的事事物;最后利用用回滾技技術(shù)(RollBack))取消發(fā)發(fā)生故障障時(shí)已寫寫入日志志文件但但沒(méi)有提提交的事事物,將將數(shù)據(jù)庫(kù)庫(kù)恢復(fù)到到故障時(shí)時(shí)刻的狀狀態(tài)。12在T1和和T3時(shí)時(shí)刻進(jìn)行行了兩次次數(shù)據(jù)庫(kù)庫(kù)備份,,在T5時(shí)刻數(shù)數(shù)據(jù)庫(kù)出出現(xiàn)故障障。如果果使用T1時(shí)時(shí)刻的備備份1恢恢復(fù)數(shù)據(jù)據(jù)庫(kù),則則只能恢恢復(fù)到T1時(shí)刻刻的狀態(tài)態(tài),即不不完全恢恢復(fù);如如果使用用T3時(shí)時(shí)刻的備備份2恢恢復(fù)數(shù)據(jù)據(jù)庫(kù),則則可以恢恢復(fù)到T3時(shí)刻刻到T5時(shí)刻的的任意狀狀態(tài)(歸歸檔日志志與聯(lián)機(jī)機(jī)日志))。1316.2.2Oracle數(shù)據(jù)據(jù)庫(kù)故障障類型及及

恢復(fù)復(fù)措施語(yǔ)句故障障進(jìn)程故障障用戶錯(cuò)誤誤實(shí)例失敗敗網(wǎng)絡(luò)故障障介質(zhì)故障障14語(yǔ)句故障障語(yǔ)句故障障是指執(zhí)執(zhí)行SQL語(yǔ)句句時(shí)發(fā)生生的故障障。例如如,對(duì)不不存在的的表執(zhí)行行SELECT操作、、向已無(wú)無(wú)空間可可用的表表中執(zhí)行行INSERT操作等等都會(huì)發(fā)發(fā)生語(yǔ)句句故障,,Oracle將返回回給用戶戶一個(gè)錯(cuò)錯(cuò)誤信息息。語(yǔ)句句故障通通常不需需要DBA干預(yù)預(yù),Oracle會(huì)自自動(dòng)回滾滾產(chǎn)生錯(cuò)錯(cuò)誤的SQL語(yǔ)語(yǔ)句操作作。進(jìn)程故障障進(jìn)程故障障是指用用戶進(jìn)程程、服務(wù)務(wù)器進(jìn)程程或數(shù)據(jù)據(jù)庫(kù)后臺(tái)臺(tái)進(jìn)程由由于某種種原因而而意外終終止,此此時(shí)該進(jìn)進(jìn)程將無(wú)無(wú)法使用用,但不不影響其其他進(jìn)程程的運(yùn)行行。Oracle的后后臺(tái)進(jìn)程程PMON能夠夠自動(dòng)監(jiān)監(jiān)測(cè)并恢恢復(fù)故障障進(jìn)程。。如果該該進(jìn)程無(wú)無(wú)法恢復(fù)復(fù),則需需要DBA關(guān)閉閉并重新新啟動(dòng)數(shù)數(shù)據(jù)庫(kù)實(shí)實(shí)例。15用戶錯(cuò)誤誤用戶錯(cuò)誤誤是指用用戶在使使用數(shù)據(jù)據(jù)庫(kù)時(shí)產(chǎn)產(chǎn)生的錯(cuò)錯(cuò)誤。例例如,用用戶意外外刪除某某個(gè)表或或表中的的數(shù)據(jù)。。用戶錯(cuò)錯(cuò)誤無(wú)法法由Oracle自動(dòng)動(dòng)進(jìn)行恢恢復(fù),管管理員可可以使用用邏輯備備份來(lái)恢恢復(fù)。實(shí)例失敗敗實(shí)例失敗敗是指由由于某種種原因?qū)?dǎo)致數(shù)據(jù)據(jù)庫(kù)實(shí)例例無(wú)法正正常工作作。例如如,突然然斷電導(dǎo)導(dǎo)致數(shù)據(jù)據(jù)庫(kù)服務(wù)務(wù)器立即即關(guān)閉、、數(shù)據(jù)庫(kù)庫(kù)服務(wù)器器硬件故故障導(dǎo)致致操作系系統(tǒng)無(wú)法法運(yùn)行等等。實(shí)例例失敗時(shí)時(shí),需要要進(jìn)行實(shí)實(shí)例重新新啟動(dòng),,在實(shí)例例重新啟啟動(dòng)的過(guò)過(guò)程中,,數(shù)據(jù)庫(kù)庫(kù)后臺(tái)進(jìn)進(jìn)程SMON會(huì)會(huì)自動(dòng)對(duì)對(duì)實(shí)例進(jìn)進(jìn)行恢復(fù)復(fù)。16網(wǎng)絡(luò)故障障網(wǎng)絡(luò)故障障是指由由于通信信軟件或或硬件故故障,導(dǎo)導(dǎo)致應(yīng)用用程序或或用戶與與數(shù)據(jù)庫(kù)庫(kù)服務(wù)器器之間的的通信中中斷。數(shù)數(shù)據(jù)庫(kù)的的后臺(tái)進(jìn)進(jìn)程PMON將將自動(dòng)監(jiān)監(jiān)測(cè)并處處理意外外中斷的的用戶進(jìn)進(jìn)程和服服務(wù)器進(jìn)進(jìn)程。介質(zhì)故障障介質(zhì)故障障是指由由于各種種原因引引起的數(shù)數(shù)據(jù)庫(kù)數(shù)數(shù)據(jù)文件件、控制制文件或或重做日日志文件件的損壞壞,導(dǎo)致致系統(tǒng)無(wú)無(wú)法正常常運(yùn)行。。例如,,磁盤損損壞導(dǎo)致致文件系系統(tǒng)被破破壞。介介質(zhì)故障障是數(shù)據(jù)據(jù)庫(kù)備份份與恢復(fù)復(fù)中主要要關(guān)心的的故障類類型,需需要管理理員提前前做好數(shù)數(shù)據(jù)庫(kù)的的備份,,否則將將導(dǎo)致數(shù)數(shù)據(jù)庫(kù)無(wú)無(wú)法恢復(fù)復(fù)。1716.2.3備備份份原則與與策略在剛建立立數(shù)據(jù)庫(kù)庫(kù)時(shí),應(yīng)應(yīng)該立即即進(jìn)行數(shù)數(shù)據(jù)庫(kù)的的完全備備份;將所有的的數(shù)據(jù)庫(kù)庫(kù)備份保保存在一一個(gè)獨(dú)立立磁盤上上(必須須是與當(dāng)當(dāng)前數(shù)據(jù)據(jù)庫(kù)系統(tǒng)統(tǒng)正在使使用的文文件不同同的磁盤盤);應(yīng)該保持持控制文文件的多多路復(fù)用用,且控控制文件件的副本本應(yīng)該存存放在不不同磁盤盤控制器器下的不不同磁盤盤設(shè)備上上;應(yīng)該保持持多個(gè)聯(lián)聯(lián)機(jī)日志志文件組組,每個(gè)個(gè)組中至至少應(yīng)該該保持兩兩個(gè)日志志成員,,同一日日志組的的多個(gè)成成員應(yīng)該該分散存存放在不不同磁盤盤上;至少保證證兩個(gè)歸歸檔重做做日志文文件的歸歸檔目標(biāo)標(biāo),不同同歸檔目目標(biāo)應(yīng)該該分散于于不同磁磁盤;如果條件件允許,,盡量保保證數(shù)據(jù)據(jù)庫(kù)運(yùn)行行于歸檔檔模式;;根據(jù)數(shù)據(jù)據(jù)庫(kù)數(shù)據(jù)據(jù)變化的的頻率情情況確定定數(shù)據(jù)庫(kù)庫(kù)備份規(guī)規(guī)律;18在歸檔模模式下,,當(dāng)數(shù)據(jù)據(jù)庫(kù)結(jié)構(gòu)構(gòu)發(fā)生變變化時(shí),,如創(chuàng)建建或刪除除表空間間、添加加數(shù)據(jù)文文件、重重做日志志文件等等,應(yīng)該該備份數(shù)數(shù)據(jù)庫(kù)的的控制文文件;在非歸檔檔模式下下,當(dāng)數(shù)數(shù)據(jù)庫(kù)結(jié)結(jié)構(gòu)發(fā)生生變化時(shí)時(shí),應(yīng)該該進(jìn)行數(shù)數(shù)據(jù)庫(kù)的的完全備備份;在歸檔模式下下,對(duì)于經(jīng)常常使用的表空空間,可以采采用表空間備備份方法提高高備份效率;;在歸檔模式下下,通常不需需要對(duì)聯(lián)機(jī)重重做日志文件件進(jìn)行備份;;使用RESETLOGS方式打開(kāi)數(shù)據(jù)據(jù)庫(kù)后,應(yīng)該該進(jìn)行一個(gè)數(shù)數(shù)據(jù)庫(kù)的完全全備份;對(duì)于重要的表表中的數(shù)據(jù),,可以采用邏邏輯備份方式式進(jìn)行備份。。1916.2.4恢復(fù)原原則與策略根據(jù)數(shù)據(jù)庫(kù)介介質(zhì)故障原因因,確定采用用完全介質(zhì)恢恢復(fù)還是不完完全介質(zhì)恢復(fù)復(fù);如果數(shù)據(jù)庫(kù)運(yùn)運(yùn)行在非歸檔檔模式,則當(dāng)當(dāng)介質(zhì)故障發(fā)發(fā)生時(shí),只能能進(jìn)行數(shù)據(jù)庫(kù)庫(kù)的不完全恢恢復(fù),將數(shù)據(jù)據(jù)庫(kù)恢復(fù)到最最近的備份時(shí)時(shí)刻的狀態(tài);;如果數(shù)據(jù)庫(kù)運(yùn)運(yùn)行在歸檔模模式,則當(dāng)一一個(gè)或多個(gè)數(shù)數(shù)據(jù)文件損壞壞時(shí),可以使使用備份的數(shù)數(shù)據(jù)文件進(jìn)行行完全或不完完全恢復(fù)數(shù)據(jù)據(jù)庫(kù);如果數(shù)據(jù)庫(kù)運(yùn)運(yùn)行在歸檔模模式,則當(dāng)數(shù)數(shù)據(jù)庫(kù)的控制制文件損壞時(shí)時(shí),可以使用用備份的控制制文件實(shí)現(xiàn)數(shù)數(shù)據(jù)庫(kù)的不完完全恢復(fù);如果數(shù)據(jù)庫(kù)運(yùn)運(yùn)行在歸檔模模式,則當(dāng)數(shù)數(shù)據(jù)庫(kù)的聯(lián)機(jī)機(jī)日志文件損損壞時(shí),可以以使用備份的的數(shù)據(jù)文件和和聯(lián)機(jī)重做日日志文件不完完全恢復(fù)數(shù)據(jù)據(jù)庫(kù);如果執(zhí)行了不不完全恢復(fù),,則當(dāng)重新打打開(kāi)數(shù)據(jù)庫(kù)時(shí)時(shí)應(yīng)該使用RESETLOGS選項(xiàng)。2016.3物物理備份與恢恢復(fù)冷備份熱備份非歸檔模式下下數(shù)據(jù)庫(kù)的恢恢復(fù)歸檔模式下數(shù)數(shù)據(jù)庫(kù)的完全全恢復(fù)歸檔模式下數(shù)數(shù)據(jù)庫(kù)的不完完全恢復(fù)利用OEM進(jìn)進(jìn)行物理備份份與恢復(fù)212216.3.1冷備份份概述關(guān)閉數(shù)據(jù)庫(kù)實(shí)實(shí)例。用操作系統(tǒng)的的實(shí)用工具備備份所有的物物理文件,包包括數(shù)據(jù)文件件、控制文件件、聯(lián)機(jī)重做做日志文件等等。23關(guān)閉數(shù)據(jù)庫(kù),開(kāi)始備份故障時(shí)刻

備份恢復(fù)重裝備份副本恢復(fù)丟失數(shù)據(jù)備份完成如果沒(méi)有啟用用歸檔模式,,數(shù)據(jù)庫(kù)不能能恢復(fù)到備份份完成后的任任意時(shí)刻。如果啟用歸檔檔模式,從冷冷備份結(jié)束后后到出現(xiàn)故障障這段時(shí)間的的數(shù)據(jù)庫(kù)恢復(fù)復(fù),可以利用用聯(lián)機(jī)日志文文件和歸檔日日志文件實(shí)現(xiàn)現(xiàn)。24冷備份步驟確定數(shù)據(jù)庫(kù)各各種物理文件件關(guān)閉數(shù)據(jù)庫(kù)備份所有相關(guān)關(guān)的數(shù)據(jù)庫(kù)物物理文件重新啟動(dòng)數(shù)據(jù)據(jù)庫(kù)25啟動(dòng)SQL*Plus,,以SYSDBA身份登登錄數(shù)據(jù)庫(kù)查詢當(dāng)前數(shù)據(jù)據(jù)庫(kù)所有數(shù)據(jù)據(jù)文件、控制制文件、聯(lián)機(jī)機(jī)重做日志文文件的位置。。SELECTfile_nameFROMdba_data_files;SELECTmemberFROMv$logfile;SELECTvalueFROMv$parameterWHEREname='control_files';關(guān)閉數(shù)據(jù)庫(kù)SHUTDOWNIMMEDIATE復(fù)制所有數(shù)據(jù)據(jù)文件、聯(lián)機(jī)機(jī)重做日志文文件以及控制制文件到備份份磁盤。重新啟動(dòng)數(shù)據(jù)據(jù)庫(kù)STARTUP2616.3.2熱備份數(shù)據(jù)庫(kù)完全熱熱備份的步驟驟:?jiǎn)?dòng)SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)據(jù)庫(kù)將數(shù)據(jù)庫(kù)設(shè)置置為歸檔模式式以表空間為單單位,進(jìn)行數(shù)數(shù)據(jù)文件備份份備份控制文件件備份其他物理理文件27備份數(shù)據(jù)文件件查看當(dāng)前數(shù)據(jù)據(jù)庫(kù)有哪些表表空間,以及及每個(gè)表空間間中有哪些數(shù)數(shù)據(jù)文件。SELECTtablespace_name,file_nameFROMdba_data_filesORDERBYtablespace_name;分別對(duì)每個(gè)表表空間中的數(shù)數(shù)據(jù)文件進(jìn)行行備份,其方方法為將需要備份的的表空間(如如USERS)設(shè)置為備備份狀態(tài)。ALTERTABLESPACEUSERSBEGINBACKUP;將表空間中所所有的數(shù)據(jù)文文件復(fù)制到備備份磁盤。結(jié)束表空間的的備份狀態(tài)。。ALTERTABLESPACEUSERSENDBACKUP;對(duì)數(shù)據(jù)庫(kù)中所所有表空間分分別采用該步步驟進(jìn)行備份份。28備份控制文件件當(dāng)執(zhí)行了下列列操作時(shí)應(yīng)該該進(jìn)行控制文文件備份ALTERDATABASEADDLOGFILEALERTDATABASEADDLOGFILEMEMBERALTERDATABASERENAMEFILEALTERDATABASEDROPLOGFILEGROUPALTERDATABASEDROPLOGFILEMEMBERCREATETABLESPACEALTERTABLESPACEADDDATAFILEALTERTABLESPACERENAMEDATAFILEDROPTABLESPACE29控制文件備份份方法將控制文件備備份為二進(jìn)制制文件。ALTERDATABASEBACKUPCONTROLFILETO'D:\ORACLE\BACKUP\CONTROL.BKP';將控制文件備備份為文本文文件。ALTERDATABASEBACKUPCONTROLFILETOTRACE;30其他文件的備備份歸檔當(dāng)前的聯(lián)聯(lián)機(jī)重做日志志文件。ALTERSYSTEMARCHIVELOGCURRENT;備份歸檔重做做日志文件,,將所有的歸歸檔重做日志志文件復(fù)制到到備份磁盤中中。備份初始化參參數(shù)文件,將將初始化參數(shù)數(shù)文件復(fù)制到到備份磁盤中中。3116.3.3非歸檔檔模式下數(shù)據(jù)據(jù)庫(kù)的恢復(fù)非歸檔模式下下數(shù)據(jù)庫(kù)的恢恢復(fù)主要指利利用非歸檔模模式下的冷備備份恢復(fù)數(shù)據(jù)據(jù)庫(kù)。步驟驟為為::關(guān)閉閉數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)。。SHUTDOWNIMMEDIATE將備備份份的的所所有有數(shù)數(shù)據(jù)據(jù)文文件件、、控控制制文文件件、、聯(lián)聯(lián)機(jī)機(jī)重重做做日日志志文文件件還還原原到到原原來(lái)來(lái)所所在在的的位位置置。。重新新啟啟動(dòng)動(dòng)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)。。STARTUP注意意非歸歸檔檔模模式式下下的的數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)恢恢復(fù)復(fù)是是不不完完全全恢恢復(fù)復(fù),,只只能能將將數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)恢恢復(fù)復(fù)到到最最近近一一次次完完全全冷冷備備份份的的狀狀態(tài)態(tài)。。3216.3.4歸歸檔檔模模式式下下數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)的的完完全全恢恢復(fù)復(fù)概述述數(shù)據(jù)據(jù)庫(kù)庫(kù)級(jí)級(jí)完完全全恢恢復(fù)復(fù)表空空間間級(jí)級(jí)完完全全恢恢復(fù)復(fù)數(shù)據(jù)據(jù)文文件件級(jí)級(jí)完完全全恢恢復(fù)復(fù)數(shù)據(jù)據(jù)庫(kù)庫(kù)完完全全恢恢復(fù)復(fù)示示例例33(1)概述述概念念歸檔檔模模式式下下數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)的的完完全全恢恢復(fù)復(fù)是是指指歸歸檔檔模模式式下下一一個(gè)個(gè)或或多多個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)文文件件損損壞壞,,利利用用熱熱備備份份的的數(shù)數(shù)據(jù)據(jù)文文件件替替換換損損壞壞的的數(shù)數(shù)據(jù)據(jù)文文件件,,再再結(jié)結(jié)合合歸歸檔檔日日志志文文件件和和聯(lián)聯(lián)機(jī)機(jī)重重做做日日志志文文件件,,采采用用前前滾滾技技術(shù)術(shù)重重做做自自備備份份以以來(lái)來(lái)的的所所有有改改動(dòng)動(dòng),,采采用用回回滾滾技技術(shù)術(shù)回回滾滾未未提提交交的的操操作作,,以以恢恢復(fù)復(fù)到到數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)故故障障時(shí)時(shí)刻刻的的狀狀態(tài)態(tài)。。34恢復(fù)復(fù)的的級(jí)級(jí)別別數(shù)據(jù)據(jù)庫(kù)庫(kù)級(jí)級(jí)完完全全恢恢復(fù)復(fù)::主主要要應(yīng)應(yīng)用用于于所所有有或或多多數(shù)數(shù)數(shù)數(shù)據(jù)據(jù)文文件件損損壞壞的的恢恢復(fù)復(fù);;表空空間間級(jí)級(jí)完完全全恢恢復(fù)復(fù)::對(duì)對(duì)指指定定表表空空間間中中的的數(shù)數(shù)據(jù)據(jù)文文件件進(jìn)進(jìn)行行恢恢復(fù)復(fù);;數(shù)據(jù)據(jù)文文件件級(jí)級(jí)完完全全恢恢復(fù)復(fù)::是是針針對(duì)對(duì)特特定定的的數(shù)數(shù)據(jù)據(jù)文文件件進(jìn)進(jìn)行行恢恢復(fù)復(fù)。。注意意數(shù)據(jù)據(jù)庫(kù)庫(kù)級(jí)級(jí)的的完完全全恢恢復(fù)復(fù)只只能能在在數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)裝裝載載但但沒(méi)沒(méi)有有打打開(kāi)開(kāi)的的狀狀態(tài)態(tài)下下進(jìn)進(jìn)行行,,而而表表空空間間級(jí)級(jí)完完全全恢恢復(fù)復(fù)和和數(shù)數(shù)據(jù)據(jù)文文件件級(jí)級(jí)完完全全恢恢復(fù)復(fù)可可以以在在數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)處處于于裝裝載載狀狀態(tài)態(tài)或或打打開(kāi)開(kāi)的的狀狀態(tài)態(tài)下下進(jìn)進(jìn)行行。。35歸檔檔模模式式下下數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)完完全全恢恢復(fù)復(fù)的的基基本本語(yǔ)語(yǔ)法法::RECOVER[AUTOMATIC][FROM'location'][DATABASE|TABLESPACEtspname|DATAFILEdfname]參數(shù)數(shù)說(shuō)說(shuō)明明AUTOMATIC::進(jìn)行自動(dòng)恢恢復(fù),不需需要DBA提供重做日日志文件名名稱;location:制定歸檔重做做日志文件的的位置。默認(rèn)認(rèn)為數(shù)據(jù)庫(kù)默默認(rèn)的歸檔路路徑。36(2)數(shù)據(jù)庫(kù)庫(kù)級(jí)完全恢復(fù)復(fù)數(shù)據(jù)庫(kù)級(jí)完全全恢復(fù)的步驟驟:如果數(shù)據(jù)庫(kù)沒(méi)沒(méi)有關(guān)閉,則則強(qiáng)制關(guān)閉數(shù)數(shù)據(jù)庫(kù)。SHUTDOWNABORT利用備份的數(shù)數(shù)據(jù)文件還原原所有損壞的的數(shù)據(jù)文件。。將數(shù)據(jù)庫(kù)啟動(dòng)動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)庫(kù)恢恢復(fù)命令。RECOVERDATABASE打開(kāi)數(shù)據(jù)庫(kù)。。ALTERDATABASEOPEN;37(3)表空間間級(jí)完全恢復(fù)復(fù)以EXAMPLE表空間間的數(shù)據(jù)文件件example01.dbf損壞壞為例模擬表表空級(jí)的完全全恢復(fù)。數(shù)據(jù)庫(kù)處于裝裝載狀態(tài)下的的恢復(fù)數(shù)據(jù)庫(kù)處于打打開(kāi)狀態(tài)下的的恢復(fù)38數(shù)據(jù)庫(kù)處于裝裝載狀態(tài)下的的恢復(fù)如果數(shù)據(jù)庫(kù)沒(méi)沒(méi)有關(guān)閉,則則強(qiáng)制關(guān)閉數(shù)數(shù)據(jù)庫(kù)。SHUTDOWNABORT利用備份的數(shù)數(shù)據(jù)文件example01.dbf還原損壞壞的數(shù)據(jù)文件件example01.dbf。將數(shù)據(jù)庫(kù)啟動(dòng)動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行表空間恢恢復(fù)命令。RECOVERTABLESPACEEXAMPLE打開(kāi)數(shù)據(jù)庫(kù)。。ALTERDATABASEOPEN;39數(shù)據(jù)庫(kù)處于打打開(kāi)狀態(tài)下的的恢復(fù)①如果數(shù)據(jù)庫(kù)庫(kù)已經(jīng)關(guān)閉,,則將數(shù)據(jù)庫(kù)庫(kù)啟動(dòng)到MOUNT狀態(tài)態(tài)。STARTUPMOUNT②將損壞的數(shù)數(shù)據(jù)文件設(shè)置置為脫機(jī)狀態(tài)態(tài)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'OFFLINE;③打開(kāi)數(shù)據(jù)庫(kù)庫(kù)。ALTERDATABASEOPEN;④將損壞的數(shù)數(shù)據(jù)文件所在在的表空間脫脫機(jī)。ALTERTABLESPACEEXAMPLEOFFLINEFORRECOVER;40⑤利用備份份的數(shù)據(jù)文件件example01.dbf還原原損壞的數(shù)據(jù)據(jù)文件example01.dbf。⑥執(zhí)行表空空間恢復(fù)命令令。RECOVERTABLESPACEEXAMPLE;⑦將表空間間聯(lián)機(jī)。ALTERTABLESPACEEXAMPLEONLINE;如果數(shù)據(jù)文件件損壞時(shí)數(shù)據(jù)據(jù)庫(kù)正處于打打開(kāi)狀態(tài),則則可以直接執(zhí)執(zhí)行步驟(4)~(7))。41(4)數(shù)據(jù)文文件級(jí)完全恢恢復(fù)以數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\example01.dbf損壞為例模模擬數(shù)據(jù)文件件級(jí)的完全恢恢復(fù)。數(shù)據(jù)庫(kù)處于裝裝載狀態(tài)下的的恢復(fù)數(shù)據(jù)庫(kù)處于打打開(kāi)狀態(tài)下的的恢復(fù)42數(shù)據(jù)庫(kù)處于裝裝載狀態(tài)下的的恢復(fù)如果數(shù)據(jù)庫(kù)沒(méi)沒(méi)有關(guān)閉,則則強(qiáng)制關(guān)閉數(shù)數(shù)據(jù)庫(kù)。SHUTDOWNABORT利用備份的數(shù)數(shù)據(jù)文件example01.dbf還原損壞壞的數(shù)據(jù)文件件example01.dbf。將數(shù)據(jù)庫(kù)啟動(dòng)動(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)聯(lián)機(jī)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'ONLINE打開(kāi)數(shù)據(jù)庫(kù)。。ALTERDATABASEOPEN;43數(shù)據(jù)庫(kù)處于打打開(kāi)狀態(tài)下的的恢復(fù)如果數(shù)據(jù)庫(kù)已已經(jīng)關(guān)閉,則則將數(shù)據(jù)庫(kù)啟啟動(dòng)到MOUNT狀態(tài)。。STARTUPMOUNT將損壞的數(shù)據(jù)據(jù)文件設(shè)置為為脫機(jī)狀態(tài)。。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'OFFLINE;打開(kāi)數(shù)據(jù)庫(kù)。。ALTERDATABASEOPEN;利用備份的數(shù)數(shù)據(jù)文件example01.dbf還原損壞壞的數(shù)據(jù)文件件example01.dbf。44執(zhí)行數(shù)據(jù)文件件恢復(fù)命令。。RECOVERDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF';將數(shù)據(jù)文件聯(lián)聯(lián)機(jī)。ALTERDATABASEDATAFILE'D:\oracle\product\10.2.0\oradata\orcl\EXAMPLE01.DBF'ONLINE;如果數(shù)據(jù)文件件損壞時(shí)數(shù)據(jù)據(jù)庫(kù)正處于打打開(kāi)狀態(tài),則則可以直接執(zhí)執(zhí)行步驟(2)、(4))~(6)。。45(5)數(shù)據(jù)庫(kù)庫(kù)完全恢復(fù)示示例以SYSTEM表空間的的數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\system01.dbf損損壞為例演演示歸檔模式式下的完全恢恢復(fù)操作。首先進(jìn)行一次次歸檔模式下下的數(shù)據(jù)庫(kù)完完整備份。以SYSDBA身份登錄錄數(shù)據(jù)庫(kù)進(jìn)行行下列操作。。CREATETABLEtest_rec(IDNUMBERPRIMARYKEY,NAMECHAR(20))TABLESPACESYSTEM;INSERTINTOtest_recVALUES(1,'ZHANGSAN');COMMIT;INSERTINTOtest_recVALUES(2,'LISI');COMMIT;ALTERSYSTEMSWITCHLOGFILE;SELECT*FROMtest_rec;SHUTDOWNABORT;46刪除SYSTEM表空間間的數(shù)據(jù)文件件D:\oracle\product\10.2.0\oradata\orcl\system01.dbf,以模擬數(shù)數(shù)據(jù)文件損壞壞的情形。用備份的數(shù)據(jù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\system01.dbf還原損損壞(本文為為被刪除)的的數(shù)據(jù)文件。。執(zhí)行恢復(fù)操作作。由于SYSTEM表表空間不能在在數(shù)據(jù)庫(kù)打開(kāi)開(kāi)后進(jìn)行恢復(fù)復(fù),因此只能能在數(shù)據(jù)庫(kù)處處于裝載狀態(tài)態(tài)時(shí)進(jìn)行恢復(fù)復(fù)。STARTUPMOUNTRECOVERDATABASE;ALTERDATABASEOPEN;SELECT*FROMtest_rec;4716.3.5歸檔模式下數(shù)數(shù)據(jù)庫(kù)的不完完全恢復(fù)數(shù)據(jù)庫(kù)不完全全恢復(fù)概述數(shù)據(jù)文件損壞壞的數(shù)據(jù)庫(kù)不不完全恢復(fù)的的步驟數(shù)據(jù)庫(kù)不完全全恢復(fù)的示例例控制文件損壞壞的數(shù)據(jù)庫(kù)不不完全恢復(fù)48(1)數(shù)據(jù)庫(kù)庫(kù)不完全恢復(fù)復(fù)概述概念在歸檔模式下下,數(shù)據(jù)庫(kù)的的不完全恢復(fù)復(fù)主要是指歸歸檔模式下數(shù)數(shù)據(jù)文件損壞壞后,沒(méi)有將將數(shù)據(jù)庫(kù)恢復(fù)復(fù)到故障時(shí)刻刻的狀態(tài)。在進(jìn)行數(shù)據(jù)庫(kù)庫(kù)不完全恢復(fù)復(fù)之前,首先先確保對(duì)數(shù)據(jù)據(jù)庫(kù)進(jìn)行了完完全備份;在進(jìn)行數(shù)據(jù)文文件損壞的不不完全恢復(fù)時(shí)時(shí)必須先使用用完整的數(shù)據(jù)據(jù)文件備份將將數(shù)據(jù)庫(kù)恢復(fù)復(fù)到備份時(shí)刻刻的狀態(tài)。在不完全恢復(fù)復(fù)后,需要使使用RESETLOGS選項(xiàng)打開(kāi)數(shù)數(shù)據(jù)庫(kù),原來(lái)來(lái)的重做日志志文件被清空空,新的重做做日志文件序序列號(hào)重新從從1開(kāi)始,因因此原來(lái)的歸歸檔日志文件件都不再起作作用了,應(yīng)該該移走或刪除除;打開(kāi)數(shù)據(jù)庫(kù)后后,應(yīng)該及時(shí)時(shí)備份數(shù)據(jù)庫(kù)庫(kù),因?yàn)樵瓉?lái)來(lái)的備份都已已經(jīng)無(wú)效了。。49不完全恢復(fù)類類型:基于時(shí)間的不不完全恢復(fù)::將數(shù)據(jù)庫(kù)恢恢復(fù)到備份與與故障時(shí)刻之之間的某個(gè)特特定時(shí)刻?;诔蜂N的不不完全恢復(fù)::數(shù)據(jù)庫(kù)的恢恢復(fù)隨用戶輸輸入CANCEL命令而中止。。基于SCN的的不完全恢復(fù)復(fù):將數(shù)據(jù)庫(kù)庫(kù)恢復(fù)到指定定的SCN值值時(shí)的狀態(tài)。。50不完全恢復(fù)的的語(yǔ)法為RECOVER[AUTOMATIC][FROM'location'][DATABASE][UNTILTIMEtime|CANCEL|CHANGEscn][USINGBACKUPCONTROLFILE]51(2)數(shù)據(jù)文文件損壞的數(shù)數(shù)據(jù)庫(kù)不完全全恢復(fù)的步驟驟如果數(shù)據(jù)庫(kù)沒(méi)沒(méi)有關(guān)閉,則則強(qiáng)制關(guān)閉數(shù)數(shù)據(jù)庫(kù)。SHUTDOWNABORT用備份的所有有數(shù)據(jù)文件還還原當(dāng)前數(shù)據(jù)據(jù)庫(kù)的所有數(shù)數(shù)據(jù)文件,即即將數(shù)據(jù)庫(kù)的的所有數(shù)據(jù)文文件恢復(fù)到備備份時(shí)刻的狀狀態(tài)。將數(shù)據(jù)庫(kù)啟動(dòng)動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)文件件的不完全恢恢復(fù)命令。RECOVERDATABASEUNTILTIMEtime;(基于于時(shí)間恢復(fù))RECOVERDATABASEUNTILCANCEL;((基于撤銷恢恢復(fù))RECOVERDATABASEUNTILCHANGEscn;(基基于SCN恢恢復(fù))可以通過(guò)查詢?cè)償?shù)據(jù)字典視視圖V$LOG_HISTORY獲獲得時(shí)間和SCN的信息息。不完全恢復(fù)完完成后,使用用RESETLOGS選選項(xiàng)啟動(dòng)數(shù)據(jù)據(jù)庫(kù)。ALTERDATABASEOPENRESETLOGS;52(3)數(shù)據(jù)庫(kù)庫(kù)不完全恢復(fù)復(fù)的示例53(4)控制文文件損壞的數(shù)數(shù)據(jù)庫(kù)不完全全恢復(fù)如果數(shù)據(jù)庫(kù)沒(méi)沒(méi)有關(guān)閉,則則強(qiáng)制關(guān)閉數(shù)數(shù)據(jù)庫(kù)。SHUTDOWNABORT用備份的所有有數(shù)據(jù)文件和和控制文件還還原當(dāng)前數(shù)據(jù)據(jù)庫(kù)的所有數(shù)數(shù)據(jù)文件、控控制文件,即即將數(shù)據(jù)庫(kù)的的所有數(shù)據(jù)文文件、控制文文件恢復(fù)到備備份時(shí)刻的狀狀態(tài)。將數(shù)據(jù)庫(kù)啟動(dòng)動(dòng)到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行不完全恢恢復(fù)命令。RECOVERDATABASEUNTILTIMEtimeUSINGBACKUPCONTROLFILE;RECOVERDATABASEUNTILCANCELUSINGBACKUPCONTROLFILE;RECOVERDATABASEUNTILCHANGEscnUSINGBACKUPCONTROLFILE;不完全全恢復(fù)復(fù)完成成后,,使用用RESETLOGS選選項(xiàng)啟啟動(dòng)數(shù)數(shù)據(jù)庫(kù)庫(kù)。ALTERDATABASEOPENRESETLOGS;5416.3.6利用OEM進(jìn)行物物理備備份與與恢復(fù)復(fù)備份與與恢復(fù)復(fù)設(shè)置置備份數(shù)數(shù)據(jù)庫(kù)庫(kù)恢復(fù)數(shù)數(shù)據(jù)庫(kù)庫(kù)55(1)備份份與恢恢復(fù)設(shè)設(shè)置565758(2)備份份數(shù)據(jù)據(jù)庫(kù)5960616263(3)恢復(fù)復(fù)數(shù)據(jù)據(jù)庫(kù)6465666716.4邏邏輯備備份與與恢復(fù)復(fù)邏輯備備份與與恢復(fù)復(fù)概述述使用Expdp導(dǎo)出出數(shù)據(jù)據(jù)使用Impdp導(dǎo)入入數(shù)據(jù)據(jù)使用OEM導(dǎo)出出、導(dǎo)導(dǎo)入數(shù)數(shù)據(jù)6816.4.1邏邏輯備備份與與恢復(fù)復(fù)概述述邏輯備備份與與恢復(fù)復(fù)的特特點(diǎn)數(shù)據(jù)泵泵技術(shù)術(shù)69(1))邏輯輯備份份與恢恢復(fù)的的特點(diǎn)點(diǎn)概述邏輯備備份是是指利利用Oracle提供的的導(dǎo)出出工具具,將將數(shù)據(jù)據(jù)庫(kù)中中選定定的記記錄集集或數(shù)數(shù)據(jù)字字典的的邏輯輯副本本以二二進(jìn)制制文件件的形形式存存儲(chǔ)到到操作作系統(tǒng)統(tǒng)中。。邏輯輯備份份的二二進(jìn)制制文件件稱為為轉(zhuǎn)儲(chǔ)儲(chǔ)文件件,以以dmp格式存存儲(chǔ)。。邏輯恢恢復(fù)是是指利利用Oracle提供的的導(dǎo)入入工具具將邏邏輯備備份形形成的的轉(zhuǎn)儲(chǔ)儲(chǔ)文件件導(dǎo)入入數(shù)據(jù)據(jù)庫(kù)內(nèi)內(nèi)部,,進(jìn)行行數(shù)據(jù)據(jù)庫(kù)的的邏輯輯恢復(fù)復(fù)。與物理理備份份與恢恢復(fù)不不同,,邏輯輯備份份與恢恢復(fù)必必須在在數(shù)據(jù)據(jù)庫(kù)運(yùn)運(yùn)行的的狀態(tài)態(tài)下進(jìn)進(jìn)行,,因此此當(dāng)數(shù)數(shù)據(jù)庫(kù)庫(kù)發(fā)生生介質(zhì)質(zhì)損壞壞而無(wú)無(wú)法啟啟動(dòng)時(shí)時(shí),不不能利利用邏邏輯備備份恢恢復(fù)數(shù)數(shù)據(jù)庫(kù)庫(kù)。因因此,,數(shù)據(jù)據(jù)庫(kù)備備份與與恢復(fù)復(fù)是以以物理理備份份與恢恢復(fù)為為主,,邏輯輯備份份與恢恢復(fù)為為輔的的。70邏輯備備份與與恢復(fù)復(fù)有以以下特特點(diǎn)及及用途途:可以在在不同同版本本的數(shù)數(shù)據(jù)庫(kù)庫(kù)間進(jìn)進(jìn)行數(shù)數(shù)據(jù)移移植,,可以以從Oracle數(shù)數(shù)據(jù)庫(kù)庫(kù)的低低版本本移植植到高高版本本;可以在在不同同操作作系統(tǒng)統(tǒng)上運(yùn)運(yùn)行的的數(shù)據(jù)據(jù)庫(kù)間間進(jìn)行行數(shù)據(jù)據(jù)移植植,例例如可可以從從WindowsNT系統(tǒng)統(tǒng)遷移移到Unix系系統(tǒng)等等;可以在在數(shù)據(jù)據(jù)庫(kù)模模式之之間傳傳遞數(shù)數(shù)據(jù),,即先先將一一個(gè)模模式中中的對(duì)對(duì)象進(jìn)進(jìn)行備備份,,然后后再將將該備備份導(dǎo)導(dǎo)入到到數(shù)據(jù)據(jù)庫(kù)其其他模模式中中;數(shù)據(jù)的的導(dǎo)出出與導(dǎo)導(dǎo)入與與數(shù)據(jù)據(jù)庫(kù)物物理結(jié)結(jié)構(gòu)沒(méi)沒(méi)有關(guān)關(guān)系,,是以以對(duì)象象為單單位進(jìn)進(jìn)行的的,這這些對(duì)對(duì)象在在物理理上可可能存存儲(chǔ)于于不同同的文文件中中;對(duì)數(shù)據(jù)據(jù)庫(kù)進(jìn)進(jìn)行一一次邏邏輯備備份與與恢復(fù)復(fù)操作作能重重新組組織數(shù)數(shù)據(jù),,消除除數(shù)據(jù)據(jù)庫(kù)中中的鏈鏈接及及磁盤盤碎片片,從從而使使數(shù)據(jù)據(jù)庫(kù)的的性能能有較較大的的提高高;除了進(jìn)進(jìn)行數(shù)數(shù)據(jù)的的備份份與恢恢復(fù)外外,還還可以以進(jìn)行行數(shù)據(jù)據(jù)庫(kù)對(duì)對(duì)象定定義、、約束束、權(quán)權(quán)限等等的備備份與與恢復(fù)復(fù)。71(2))數(shù)據(jù)據(jù)泵技技術(shù)概述在Oracle9i及其之之前的的數(shù)據(jù)據(jù)庫(kù)版版本中中提供供了Export和Import實(shí)用程程序用用于邏邏輯備備份與與恢復(fù)復(fù)。在Oracle10g數(shù)據(jù)庫(kù)庫(kù)中又又推出出了數(shù)數(shù)據(jù)泵泵技術(shù)術(shù),即即DataPumpExport(Expdp)和DataPumpImport(Impdp)實(shí)用用程序序用于于邏輯輯備份份與恢恢復(fù)。。需要注注意,,這兩兩類邏邏輯備備份與與恢復(fù)復(fù)實(shí)用用程序序之間間不兼兼容。。使用用Export備份的的轉(zhuǎn)儲(chǔ)儲(chǔ)文件件,不不能使使用Impdp進(jìn)行導(dǎo)導(dǎo)入;;同樣樣,使使用Expdp備份的的轉(zhuǎn)儲(chǔ)儲(chǔ)文件件,也也不能能使用用Import工具進(jìn)進(jìn)行導(dǎo)導(dǎo)入。。72兩類邏邏輯備備份與與恢復(fù)復(fù)實(shí)用用程序序比較較Export和Import是客戶戶端實(shí)實(shí)用程程序,,可以以在服服務(wù)器器端使使用,,也可可以在在客戶戶端使使用;;Expdp和Impdp是服務(wù)務(wù)器端端實(shí)用用程序序,只只能在在數(shù)據(jù)據(jù)庫(kù)服服務(wù)器器端使使用。。利用Expdp,Impdp在服務(wù)務(wù)器端端多線線程并并行地地執(zhí)行行大量量數(shù)據(jù)據(jù)的導(dǎo)導(dǎo)出與與導(dǎo)入入操作作。數(shù)據(jù)泵泵技術(shù)術(shù)具有有重新新啟動(dòng)動(dòng)作業(yè)業(yè)的能能力,,即當(dāng)當(dāng)發(fā)生生數(shù)據(jù)據(jù)泵作作業(yè)故故障時(shí)時(shí),DBA或用戶戶進(jìn)行行干預(yù)預(yù)修正正后,,可以以發(fā)出出數(shù)據(jù)據(jù)泵重重新啟啟動(dòng)命命令,,使作作業(yè)從從發(fā)生生故障障的位位置繼繼續(xù)進(jìn)進(jìn)行。。73使用數(shù)數(shù)據(jù)泵泵技術(shù)術(shù)準(zhǔn)備備工作作在使用用Expdp,Impdp程序之之前需需要?jiǎng)?chuàng)創(chuàng)建DIRECTORY對(duì)象,,并將將該對(duì)對(duì)象的的READ,WRITE權(quán)限授授予用用戶。。例如如:CREATEORREPLACEDIRECTORYdumpdirAS'D:\ORACLE\BACKUP';GRANTREAD,WRITEONDIRECTORYdumpdirTOSCOTT;如果用用戶要要導(dǎo)出出或?qū)?dǎo)入非非同名名模式式的對(duì)對(duì)象,,還需需要具具有EXP_FULL_DATABASE和IMP_FULL_DATABASE權(quán)限限。。例例如如::GRANTEXP_FULL_DATABASE,IMP_FULL_DATABASETOSCOTT;7416.4.2使使用用Expdp導(dǎo)導(dǎo)出出數(shù)數(shù)據(jù)據(jù)Expdp調(diào)調(diào)用用接接口口Expdp導(dǎo)導(dǎo)出出模模式式Expdp幫幫助助及及參參數(shù)數(shù)Expdp應(yīng)應(yīng)用用實(shí)實(shí)例例75(1))Expdp調(diào)調(diào)用用接接口口命令令行行接接口口((Command-LineInterface))::在在命命令令行行中中直直接接指指定定參參數(shù)數(shù)設(shè)設(shè)置置。。參數(shù)數(shù)文文件件接接口口((ParameterFileInterface))::將將需需要要的的參參數(shù)數(shù)設(shè)設(shè)置置放放到到一一個(gè)個(gè)文文件件中中,,在在命命令令行行中中用用PARFILE參參數(shù)數(shù)指指定定參參數(shù)數(shù)文文件件。。交互互式式命命令令接接口口((Interactive-CommandInterface))::用用戶戶可可以以通通過(guò)過(guò)交交互互命命令令進(jìn)進(jìn)行行導(dǎo)導(dǎo)出出操操作作管管理理。。76(2)Expdp導(dǎo)出出模模式式全庫(kù)庫(kù)導(dǎo)導(dǎo)出出模模式式((FullExportMode)::通通過(guò)過(guò)參參數(shù)數(shù)FULL指定定,,導(dǎo)導(dǎo)出出整整個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)。。模式式導(dǎo)導(dǎo)出出模模式式((SchemaMode)::通通過(guò)過(guò)參參數(shù)數(shù)SCHEMAS指定定,,是是默默認(rèn)認(rèn)的的導(dǎo)導(dǎo)出出模模式式,,導(dǎo)導(dǎo)出出指指定定模模式式中中的的所所有有對(duì)對(duì)象象。。表導(dǎo)導(dǎo)出出模模式式((TableMode))::通通過(guò)過(guò)參參數(shù)數(shù)TABLES指指定定,,導(dǎo)導(dǎo)出出指指定定模模式式中中指指定定的的所所有有表表、、分分區(qū)區(qū)及及其其依依賴賴對(duì)對(duì)象象。。表空空間間導(dǎo)導(dǎo)出出模模式式((TablespaceMode))::通通過(guò)過(guò)參參數(shù)數(shù)TABLESPACES指指定定,,導(dǎo)導(dǎo)出出指指定定表表空空間間中中所所有有表表及及其其依依賴賴對(duì)對(duì)象象的的定定義義和和數(shù)數(shù)據(jù)據(jù)。。傳輸輸表表空空間間導(dǎo)導(dǎo)出出模模式式((TransportableTablespace))::通通過(guò)過(guò)參參數(shù)數(shù)TRANSPORT_TABLESPACES指指定定,,導(dǎo)導(dǎo)出出指指定定表表空空間間中中所所有有表表及及其其依依賴賴對(duì)對(duì)象象的的定定義義。。通通過(guò)過(guò)該該導(dǎo)導(dǎo)出出模模式式以以及及相相應(yīng)應(yīng)導(dǎo)導(dǎo)入入模模式式,,可可以以實(shí)實(shí)現(xiàn)現(xiàn)將將一一個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)表表空空間間的的數(shù)數(shù)據(jù)據(jù)文文件件復(fù)復(fù)制制到到另另一一個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)中中。。77(3)Expdp幫助助及及參參數(shù)數(shù)獲取取Expdp幫幫助助信信息息C:\>expdpHELP=YExpdp參參數(shù)數(shù)78(4)Expdp應(yīng)用用實(shí)實(shí)例例命令令行行方方式式導(dǎo)導(dǎo)出出::表表導(dǎo)導(dǎo)出出模模式式導(dǎo)出出scott模式式下下的的emp表和和dept表,,轉(zhuǎn)轉(zhuǎn)儲(chǔ)儲(chǔ)文文件件名名稱稱為為emp_dept.dmp,日日志志文文件件命命名名為為emp_dept.log,作作業(yè)業(yè)命命名名為為emp_dept_job,導(dǎo)導(dǎo)出出操操作作啟啟動(dòng)動(dòng)3個(gè)進(jìn)進(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模式下的的所有對(duì)對(duì)象及其其數(shù)據(jù)。。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=scott.dmpLOGFILE=scott.logSCHEMAS=scottJOB_NAME=exp_scott_schema79命令行方方式導(dǎo)出出:表空空間導(dǎo)出出模式。。導(dǎo)出EXAMPLE,,USERS表表空間中中的所有有對(duì)象及及其數(shù)據(jù)據(jù)。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=tsp.dmpTABLESPACES=example,users命令行方方式導(dǎo)出出:傳輸輸表空間間導(dǎo)出模模式導(dǎo)出EXAMPLE,,USERS表表空間中中數(shù)據(jù)對(duì)對(duì)象的定定義信息息。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=tts.dmpTRANSPORT_TABLESPACES=example,usersTRANSPORT_FULL_CHECK=YLOGFILE=tts.log注意:當(dāng)當(dāng)前用戶戶不能使使用傳輸輸表空間間導(dǎo)出模模式導(dǎo)出出自己的的默認(rèn)表表空間。。80命令行方方式導(dǎo)出出:數(shù)據(jù)據(jù)庫(kù)導(dǎo)出出模式將當(dāng)前數(shù)數(shù)據(jù)全部部導(dǎo)出,,不寫日日志文件件。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=expfull.dmpFULL=YNOLOGFILE=Y命令行方方式導(dǎo)出出:按條條件查詢?cè)儗?dǎo)出導(dǎo)出scott.emp表中部門門號(hào)大于于10,且工資資大于2000的員工信信息。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=exp2.dmpTABLES=empQUERY='emp:"WHEREdeptno=10ANDsal>2000"'NOLOGFILE=Y81參數(shù)文件件方式導(dǎo)導(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.txt82交互命令令方式導(dǎo)導(dǎo)出在當(dāng)前運(yùn)運(yùn)行作業(yè)業(yè)的終端端中按Ctrl+C組合鍵,,進(jìn)入交交互式命命令狀態(tài)態(tài);在另一個(gè)個(gè)非運(yùn)行行導(dǎo)出作作業(yè)的終終端中,,通過(guò)導(dǎo)導(dǎo)出作業(yè)業(yè)名稱來(lái)來(lái)進(jìn)行導(dǎo)導(dǎo)出作業(yè)業(yè)的管理理。83示例執(zhí)行一個(gè)個(gè)作業(yè)。。C:\>expdpscott/tigerFULL=YDIRECTORY=dumpdirDUMPFILE=fulldb1.dmp,fulldb2.dmpFILESIZE=2GPARALLEL=3LOGFILE=expfull.logJOB_NAME=expfull作業(yè)開(kāi)始始執(zhí)行后后,按Ctrl+C組合鍵。。在交互模模式中輸輸入導(dǎo)出出作業(yè)的的管理命命令,根根據(jù)提示示進(jìn)行操操作。Export>STOP_JOB=IMMEDIATEAreyousureyouwishtostopthisjob([Y]/N):Y8416.4.3使使用用Impdp導(dǎo)導(dǎo)入數(shù)據(jù)據(jù)Impdp調(diào)用用接口Impdp導(dǎo)入入模式Impdp幫幫助及參參數(shù)Impdp應(yīng)應(yīng)用實(shí)例例85(1)Impdp調(diào)用接口口命令行接接口(Command-LineInterface)參數(shù)文件件接口((ParameterFileInterface)交互式命命令接口口(Interactive-CommandInterface)86(2)Impdp導(dǎo)入模式式全庫(kù)導(dǎo)入入模式((FullImportMode)模式導(dǎo)入入模式((SchemaMode)表導(dǎo)入模模式(TableMode)表空間導(dǎo)導(dǎo)入模式式(TablespaceMode)傳輸表空空間導(dǎo)入入模式((TransportableTablespace)87(3)Impdp幫助及參參數(shù)在操作系系統(tǒng)的命命令提示示符窗口口中輸入入impdpHELP=Y命令,,可以查查看Impdp程序的的使用、、關(guān)鍵字字(參數(shù)數(shù))、交交互命令令等介紹紹。88(4)Impdp應(yīng)用實(shí)例例命令行方方式導(dǎo)入入:表表導(dǎo)入模模式使用邏輯輯備份文文件emp_dept.dmp恢復(fù)復(fù)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論