版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Oracle數(shù)據(jù)庫管理李永信息工程系計算機(jī)基礎(chǔ)教研室五、Oracle備份和恢復(fù)2本講內(nèi)容備份與恢復(fù)概述物理備份與恢復(fù)邏輯備份與恢復(fù)35.1備份與恢復(fù)概述備份與恢復(fù)的基本概念Oracle數(shù)據(jù)庫故障類型及恢復(fù)措施備份的原則與策略恢復(fù)的原則與策略45.1.1備份與恢復(fù)的概念備份與恢復(fù)的作用備份的概念與類型恢復(fù)的概念、類型與恢復(fù)機(jī)制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ù)都能從錯誤狀態(tài)恢復(fù)到某種邏輯一致的狀態(tài)。6(2)備份的概念與類型概念數(shù)據(jù)庫備份就是對數(shù)據(jù)庫中部分或全部數(shù)據(jù)進(jìn)行復(fù)制,形成副本,存放到一個相對獨(dú)立的設(shè)備上,如磁盤、磁帶,以備將來數(shù)據(jù)庫出現(xiàn)故障時使用。根據(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ù)抽取出來存放到一個二進(jìn)制文件中。7根據(jù)數(shù)據(jù)庫備份時是否關(guān)閉數(shù)據(jù)庫服務(wù)器,物理備份分為:冷備份又稱停機(jī)備份,是指在關(guān)閉數(shù)據(jù)庫的情況下將所有的數(shù)據(jù)庫文件復(fù)制到另一個磁盤或磁帶上去。熱備份又稱聯(lián)機(jī)備份,是指在數(shù)據(jù)庫運(yùn)行的情況下對數(shù)據(jù)庫進(jìn)行的備份。要進(jìn)行熱備份,數(shù)據(jù)庫必須運(yùn)行在歸檔日志模式下。8根據(jù)備份的規(guī)模不同,物理備份可分為:完全備份:指對整個數(shù)據(jù)庫進(jìn)行備份,包括所有的物理文件。部分備份:對部分?jǐn)?shù)據(jù)文件、表空間、控制文件、歸檔重做日志文件等進(jìn)行備份。根據(jù)數(shù)據(jù)庫是否運(yùn)行在歸檔模式,物理備份可分為:歸檔備份非歸檔備份9(3)恢復(fù)的概念、類型與恢復(fù)機(jī)制概念數(shù)據(jù)庫恢復(fù)是指在數(shù)據(jù)庫發(fā)生故障時,使用數(shù)據(jù)庫備份還原數(shù)據(jù)庫,使數(shù)據(jù)庫恢復(fù)到無故障狀態(tài)。根據(jù)數(shù)據(jù)庫恢復(fù)時使用的備份不同,恢復(fù)分為:所謂的物理恢復(fù)就是,利用物理備份來恢復(fù)數(shù)據(jù)庫,即利用物理備份文件恢復(fù)損毀文件,是在操作系統(tǒng)級別上進(jìn)行的。邏輯恢復(fù)是指利用邏輯備份的二進(jìn)制文件,使用Oracle提供的導(dǎo)入工具(如Impdp,Import)將部分或全部信息重新導(dǎo)入數(shù)據(jù)庫,恢復(fù)損毀或丟失的數(shù)據(jù)。10(3)恢復(fù)的概念、類型與恢復(fù)機(jī)制根據(jù)數(shù)據(jù)庫恢復(fù)程度的不同,恢復(fù)可分為:完全恢復(fù):利用備份使數(shù)據(jù)庫恢復(fù)到出現(xiàn)故障時的狀態(tài)。不完全恢復(fù):利用備份使數(shù)據(jù)庫恢復(fù)到出現(xiàn)故障時刻之前的某個狀態(tài)。11數(shù)據(jù)庫的恢復(fù)分3個步驟進(jìn)行:首先使用一個完整備份將數(shù)據(jù)庫恢復(fù)到備份時刻的狀態(tài);然后利用歸檔日志文件和聯(lián)機(jī)重做日志文件中的日志信息,采用前滾技術(shù)(RollForward)重做備份以后已經(jīng)完成并提交的事物;最后利用回滾技術(shù)(RollBack)取消發(fā)生故障時已寫入日志文件但沒有提交的事物,將數(shù)據(jù)庫恢復(fù)到故障時刻的狀態(tài)。12在T1和T3時刻進(jìn)行了兩次數(shù)據(jù)庫備份,在T5時刻數(shù)據(jù)庫出現(xiàn)故障。如果使用T1時刻的備份1恢復(fù)數(shù)據(jù)庫,則只能恢復(fù)到T1時刻的狀態(tài),即不完全恢復(fù);如果使用T3時刻的備份2恢復(fù)數(shù)據(jù)庫,則可以恢復(fù)到T3時刻到T5時刻的任意狀態(tài)(歸檔日志與聯(lián)機(jī)日志)。
135.1.2Oracle數(shù)據(jù)庫故障類型及恢復(fù)措施語句故障進(jìn)程故障用戶錯誤實例失敗網(wǎng)絡(luò)故障介質(zhì)故障145.1.3備份原則與策略開始完全備份;備份獨(dú)立保存;重視日志備份;重要操作備份;重要數(shù)據(jù)邏輯備份根據(jù)需要設(shè)置規(guī)則;155.1.4恢復(fù)原則與策略根據(jù)原因,確定恢復(fù)方案非歸檔模式,只能進(jìn)行不完全恢復(fù)歸檔模式,盡可能完全恢復(fù)如果執(zhí)行了不完全恢復(fù),則當(dāng)重新打開數(shù)據(jù)庫時應(yīng)該初始化日志165.2物理備份與恢復(fù)冷備份熱備份非歸檔模式下數(shù)據(jù)庫的恢復(fù)歸檔模式下數(shù)據(jù)庫的完全恢復(fù)歸檔模式下數(shù)據(jù)庫的不完全恢復(fù)利用OEM進(jìn)行物理備份與恢復(fù)17185.2.1冷備份概述關(guān)閉數(shù)據(jù)庫實例。用操作系統(tǒng)的實用工具備份所有的物理文件,包括數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件等。19關(guān)閉數(shù)據(jù)庫,開始備份故障時刻
備份恢復(fù)
重裝備份副本恢復(fù)丟失數(shù)據(jù)備份完成如果沒有啟用歸檔模式,數(shù)據(jù)庫不能恢復(fù)到備份完成后的任意時刻。如果啟用歸檔模式,從冷備份結(jié)束后到出現(xiàn)故障這段時間的數(shù)據(jù)庫恢復(fù),可以利用聯(lián)機(jī)日志文件和歸檔日志文件實現(xiàn)。20冷備份步驟確定數(shù)據(jù)庫各種物理文件關(guān)閉數(shù)據(jù)庫備份所有相關(guān)的數(shù)據(jù)庫物理文件重新啟動數(shù)據(jù)庫21啟動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ī)重做日志文件以及控制文件到備份磁盤。重新啟動數(shù)據(jù)庫STARTUP225.2.2熱備份數(shù)據(jù)庫完全熱備份的步驟:啟動SQL*Plus,以SYSDBA身份登錄數(shù)據(jù)庫將數(shù)據(jù)庫設(shè)置為歸檔模式以表空間為單位,進(jìn)行數(shù)據(jù)文件備份備份控制文件備份其他物理文件NOARCHIVELOG(非歸檔模式)日志操作模式簡介11LGWR12LGWR13LGWRARCHIVELOG(歸檔模式)日志操作模式簡介11LGWR12LGWR13LGWR11ARCH12ARCH11當(dāng)改變?nèi)罩静僮髂J綍r,必須以SYSDBA或SYSOPER身份執(zhí)行相應(yīng)操作。改變?nèi)罩静僮髂J綑z查當(dāng)前日志操作模式SQL>connsys/passwordassysdbaSQL>selectlog_modefromv$database;SQL>archiveloglist改變?nèi)罩静僮髂J疥P(guān)閉數(shù)據(jù)庫,然后裝載數(shù)據(jù)庫SQL>shutdownimmediateSQL>startupmount改變?nèi)罩静僮髂J礁淖內(nèi)罩静僮髂J?,然后打開數(shù)據(jù)庫SQL>alterdatabasearchivelog;SQL>alterdatabaseopen;改變?nèi)罩静僮髂J?9備份數(shù)據(jù)文件查看當(dāng)前數(shù)據(jù)庫有哪些表空間,以及每個表空間中有哪些數(shù)據(jù)文件。SELECTtablespace_name,file_nameFROMdba_data_filesORDERBYtablespace_namec;分別對每個表空間中的數(shù)據(jù)文件進(jìn)行備份,其方法為將需要備份的表空間(如USERS)設(shè)置為備份狀態(tài)。ALTERTABLESPACEUSERSBEGINBACKUP;將表空間中所有的數(shù)據(jù)文件復(fù)制到備份磁盤。結(jié)束表空間的備份狀態(tài)。ALTERTABLESPACEUSERSENDBACKUP;對數(shù)據(jù)庫中所有表空間分別采用該步驟進(jìn)行備份。30備份控制文件當(dāng)執(zhí)行了下列操作時應(yīng)該進(jìn)行控制文件備份ALTERDATABASEADDLOGFILEALERTDATABASEADDLOGFILEMEMBERALTERDATABASERENAMEFILEALTERDATABASEDROPLOGFILEGROUPALTERDATABASEDROPLOGFILEMEMBERCREATETABLESPACEALTERTABLESPACEADDDATAFILEALTERTABLESPACERENAMEDATAFILEDROPTABLESPACE31控制文件備份方法將控制文件備份為二進(jìn)制文件。ALTERDATABASEBACKUPCONTROLFILETO'D:\ORACLE\BACKUP\CONTROL.BKP';
將控制文件備份為文本文件。ALTERDATABASEBACKUPCONTROLFILETOTRACE;
32其他文件的備份歸檔當(dāng)前的聯(lián)機(jī)重做日志文件。ALTERSYSTEMARCHIVELOGCURRENT;備份歸檔重做日志文件,將所有的歸檔重做日志文件復(fù)制到備份磁盤中。備份初始化參數(shù)文件,將初始化參數(shù)文件復(fù)制到備份磁盤中。335.2.3非歸檔模式下數(shù)據(jù)庫的恢復(fù)非歸檔模式下數(shù)據(jù)庫的恢復(fù)主要指利用非歸檔模式下的冷備份恢復(fù)數(shù)據(jù)庫。步驟為:關(guān)閉數(shù)據(jù)庫。SHUTDOWNIMMEDIATE將備份的所有數(shù)據(jù)文件、控制文件、聯(lián)機(jī)重做日志文件還原到原來所在的位置。重新啟動數(shù)據(jù)庫。STARTUP345.2.4歸檔模式下數(shù)據(jù)庫的完全恢復(fù)概述數(shù)據(jù)庫級完全恢復(fù)表空間級完全恢復(fù)數(shù)據(jù)文件級完全恢復(fù)數(shù)據(jù)庫完全恢復(fù)示例35(1)概述概念歸檔模式下數(shù)據(jù)庫的完全恢復(fù)是指歸檔模式下一個或多個數(shù)據(jù)文件損壞,利用熱備份的數(shù)據(jù)文件替換損壞的數(shù)據(jù)文件,再結(jié)合歸檔日志文件和聯(lián)機(jī)重做日志文件,采用前滾技術(shù)重做自備份以來的所有改動,采用回滾技術(shù)回滾未提交的操作,以恢復(fù)到數(shù)據(jù)庫故障時刻的狀態(tài)。36
恢復(fù)的級別數(shù)據(jù)庫級完全恢復(fù):主要應(yīng)用于所有或多數(shù)數(shù)據(jù)文件損壞的恢復(fù);表空間級完全恢復(fù):對指定表空間中的數(shù)據(jù)文件進(jìn)行恢復(fù);數(shù)據(jù)文件級完全恢復(fù):是針對特定的數(shù)據(jù)文件進(jìn)行恢復(fù)。
注意數(shù)據(jù)庫級的完全恢復(fù)只能在數(shù)據(jù)庫裝載但沒有打開的狀態(tài)下進(jìn)行,而表空間級完全恢復(fù)和數(shù)據(jù)文件級完全恢復(fù)可以在數(shù)據(jù)庫處于裝載狀態(tài)或打開的狀態(tài)下進(jìn)行。37歸檔模式下數(shù)據(jù)庫完全恢復(fù)的基本語法:RECOVER[AUTOMATIC][FROM'location'][DATABASE|TABLESPACEtspname|DATAFILEdfname]參數(shù)說明
AUTOMATIC:進(jìn)行自動恢復(fù),不需要DBA提供重做日志文件名稱;location:制定歸檔重做日志文件的位置。默認(rèn)為數(shù)據(jù)庫默認(rèn)的歸檔路徑。38(2)數(shù)據(jù)庫級完全恢復(fù)數(shù)據(jù)庫級完全恢復(fù)的步驟:如果數(shù)據(jù)庫沒有關(guān)閉,則強(qiáng)制關(guān)閉數(shù)據(jù)庫。SHUTDOWNABORT利用備份的數(shù)據(jù)文件還原所有損壞的數(shù)據(jù)文件。將數(shù)據(jù)庫啟動到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)庫恢復(fù)命令。RECOVERDATABASE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;
39(3)表空間級完全恢復(fù)
以EXAMPLE表空間的數(shù)據(jù)文件example01.dbf損壞為例模擬表空級的完全恢復(fù)。數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)
40數(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ù)庫啟動到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行表空間恢復(fù)命令。RECOVERTABLESPACEEXAMPLE打開數(shù)據(jù)庫。ALTERDATABASEOPEN;41數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)①如果數(shù)據(jù)庫已經(jīng)關(guān)閉,則將數(shù)據(jù)庫啟動到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;42⑤利用備份的數(shù)據(jù)文件example01.dbf還原損壞的數(shù)據(jù)文件example01.dbf。⑥執(zhí)行表空間恢復(fù)命令。RECOVERTABLESPACEEXAMPLE;⑦將表空間聯(lián)機(jī)。ALTERTABLESPACEEXAMPLEONLINE;如果數(shù)據(jù)文件損壞時數(shù)據(jù)庫正處于打開狀態(tài),則可以直接執(zhí)行步驟(4)~(7)。43(4)數(shù)據(jù)文件級完全恢復(fù)以數(shù)據(jù)文件D:\oracle\product\10.2.0\oradata\orcl\example01.dbf損壞為例模擬數(shù)據(jù)文件級的完全恢復(fù)。數(shù)據(jù)庫處于裝載狀態(tài)下的恢復(fù)數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)44數(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ù)庫啟動到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;45數(shù)據(jù)庫處于打開狀態(tài)下的恢復(fù)如果數(shù)據(jù)庫已經(jīng)關(guān)閉,則將數(shù)據(jù)庫啟動到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。46執(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ù)據(jù)庫正處于打開狀態(tài),則可以直接執(zhí)行步驟(2)、(4)~(6)。47(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;48刪除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)進(jìn)行恢復(fù)。STARTUPMOUNTRECOVERDATABASE;ALTERDATABASEOPEN;SELECT*FROMtest_rec;495.2.5歸檔模式下數(shù)據(jù)庫的不完全恢復(fù)數(shù)據(jù)庫不完全恢復(fù)概述數(shù)據(jù)文件損壞的數(shù)據(jù)庫不完全恢復(fù)的步驟數(shù)據(jù)庫不完全恢復(fù)的示例控制文件損壞的數(shù)據(jù)庫不完全恢復(fù)50(1)數(shù)據(jù)庫不完全恢復(fù)概述概念在歸檔模式下,數(shù)據(jù)庫的不完全恢復(fù)主要是指歸檔模式下數(shù)據(jù)文件損壞后,沒有將數(shù)據(jù)庫恢復(fù)到故障時刻的狀態(tài)。在進(jìn)行數(shù)據(jù)庫不完全恢復(fù)之前,首先確保對數(shù)據(jù)庫進(jìn)行了完全備份;在進(jìn)行數(shù)據(jù)文件損壞的不完全恢復(fù)時必須先使用完整的數(shù)據(jù)文件備份將數(shù)據(jù)庫恢復(fù)到備份時刻的狀態(tài)。在不完全恢復(fù)后,需要使用RESETLOGS選項打開數(shù)據(jù)庫,原來的重做日志文件被清空,新的重做日志文件序列號重新從1開始,因此原來的歸檔日志文件都不再起作用了,應(yīng)該移走或刪除;打開數(shù)據(jù)庫后,應(yīng)該及時備份數(shù)據(jù)庫,因為原來的備份都已經(jīng)無效了。51不完全恢復(fù)類型:基于時間的不完全恢復(fù):將數(shù)據(jù)庫恢復(fù)到備份與故障時刻之間的某個特定時刻?;诔蜂N的不完全恢復(fù):數(shù)據(jù)庫的恢復(fù)隨用戶輸入CANCEL命令而中止?;赟CN的不完全恢復(fù):將數(shù)據(jù)庫恢復(fù)到指定的SCN值時的狀態(tài)。52不完全恢復(fù)的語法為RECOVER[AUTOMATIC][FROM'location'][DATABASE][UNTILTIMEtime|CANCEL|CHANGEscn][USINGBACKUPCONTROLFILE]53(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ù)到備份時刻的狀態(tài)。將數(shù)據(jù)庫啟動到MOUNT狀態(tài)。STARTUPMOUNT執(zhí)行數(shù)據(jù)文件的不完全恢復(fù)命令。RECOVERDATABASEUNTILTIMEtime;(基于時間恢復(fù))RECOVERDATABASEUNTILCANCEL;(基于撤銷恢復(fù))RECOVERDATABASEUNTILCHANGEscn;(基于SCN恢復(fù))可以通過查詢數(shù)據(jù)字典視圖V$LOG_HISTORY獲得時間和SCN的信息。不完全恢復(fù)完成后,使用RESETLOGS選項啟動數(shù)據(jù)庫。ALTERDATABASEOPENRESETLOGS;545.2.6利用OEM進(jìn)行物理備份與恢復(fù)備份與恢復(fù)設(shè)置備份數(shù)據(jù)庫恢復(fù)數(shù)據(jù)庫55(1)備份與恢復(fù)設(shè)置565758(2)備份數(shù)據(jù)庫5960616263(3)恢復(fù)數(shù)據(jù)庫646566675.3邏輯備份與恢復(fù)邏輯備份與恢復(fù)概述使用Expdp導(dǎo)出數(shù)據(jù)使用Impdp導(dǎo)入數(shù)據(jù)使用OEM導(dǎo)出、導(dǎo)入數(shù)據(jù)685.3.1邏輯備份與恢復(fù)概述邏輯備份與恢復(fù)的特點(diǎn)數(shù)據(jù)泵技術(shù)69(1)邏輯備份與恢復(fù)的特點(diǎn)概述邏輯備份是指利用Oracle提供的導(dǎo)出工具,將數(shù)據(jù)庫中選定的記錄集或數(shù)據(jù)字典的邏輯副本以二進(jìn)制文件的形式存儲到操作系統(tǒng)中。邏輯備份的二進(jìn)制文件稱為轉(zhuǎn)儲文件,以dmp格式存儲。邏輯恢復(fù)是指利用Oracle提供的導(dǎo)入工具將邏輯備份形成的轉(zhuǎn)儲文件導(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ì)損壞而無法啟動時,不能利用邏輯備份恢復(fù)數(shù)據(jù)庫。因此,數(shù)據(jù)庫備份與恢復(fù)是以物理備份與恢復(fù)為主,邏輯備份與恢復(fù)為輔的。70邏輯備份與恢復(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ù),即先將一個模式中的對象進(jìn)行備份,然后再將該備份導(dǎo)入到數(shù)據(jù)庫其他模式中;數(shù)據(jù)的導(dǎo)出與導(dǎo)入與數(shù)據(jù)庫物理結(jié)構(gòu)沒有關(guān)系,是以對象為單位進(jìn)行的,這些對象在物理上可能存儲于不同的文件中;對數(shù)據(jù)庫進(jìn)行一次邏輯備份與恢復(fù)操作能重新組織數(shù)據(jù),消除數(shù)據(jù)庫中的鏈接及磁盤碎片,從而使數(shù)據(jù)庫的性能有較大的提高;除了進(jìn)行數(shù)據(jù)的備份與恢復(fù)外,還可以進(jìn)行數(shù)據(jù)庫對象定義、約束、權(quán)限等的備份與恢復(fù)。71(2)數(shù)據(jù)泵技術(shù)概述在Oracle9i及其之前的數(shù)據(jù)庫版本中提供了Export和Import實用程序用于邏輯備份與恢復(fù)。在Oracle10g數(shù)據(jù)庫中又推出了數(shù)據(jù)泵技術(shù),即DataPumpExport(Expdp)和DataPumpImport(Impdp)實用程序用于邏輯備份與恢復(fù)。需要注意,這兩類邏輯備份與恢復(fù)實用程序之間不兼容。使用Export備份的轉(zhuǎn)儲文件,不能使用Impdp進(jìn)行導(dǎo)入;同樣,使用Expdp備份的轉(zhuǎn)儲文件,也不能使用Import工具進(jìn)行導(dǎo)入。72兩類邏輯備份與恢復(fù)實用程序比較Export和Import是客戶端實用程序,可以在服務(wù)器端使用,也可以在客戶端使用;Expdp和Impdp是服務(wù)器端實用程序,只能在數(shù)據(jù)庫服務(wù)器端使用。利用Expdp,Impdp在服務(wù)器端多線程并行地執(zhí)行大量數(shù)據(jù)的導(dǎo)出與導(dǎo)入操作。數(shù)據(jù)泵技術(shù)具有重新啟動作業(yè)的能力,即當(dāng)發(fā)生數(shù)據(jù)泵作業(yè)故障時,DBA或用戶進(jìn)行干預(yù)修正后,可以發(fā)出數(shù)據(jù)泵重新啟動命令,使作業(yè)從發(fā)生故障的位置繼續(xù)進(jìn)行。73使用數(shù)據(jù)泵技術(shù)準(zhǔn)備工作在使用Expdp,Impdp程序之前需要創(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;
745.3.2使用Expdp導(dǎo)出數(shù)據(jù)Expdp調(diào)用接口Expdp導(dǎo)出模式Expdp幫助及參數(shù)Expdp應(yīng)用實例75(1)Expdp調(diào)用接口命令行接口(Command-LineInterface):在命令行中直接指定參數(shù)設(shè)置。參數(shù)文件接口(ParameterFileInterface):將需要的參數(shù)設(shè)置放到一個文件中,在命令行中用PARFILE參數(shù)指定參數(shù)文件。交互式命令接口(Interactive-CommandInterface):用戶可以通過交互命令進(jìn)行導(dǎo)出操作管理。76(2)Expdp導(dǎo)出模式全庫導(dǎo)出模式(FullExportMode):通過參數(shù)FULL指定,導(dǎo)出整個數(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)入模式,可以實現(xiàn)將一個數(shù)據(jù)庫表空間的數(shù)據(jù)文件復(fù)制到另一個數(shù)據(jù)庫中。77(3)Expdp幫助及參數(shù)獲取Expdp幫助信息C:\>expdpHELP=YExpdp參數(shù)78(4)Expdp應(yīng)用實例命令行方式導(dǎo)出:表導(dǎo)出模式導(dǎo)出scott模式下的emp表和dept表,轉(zhuǎn)儲文件名稱為emp_dept.dmp,日志文件命名為emp_dept.log,作業(yè)命名為emp_dept_job,導(dǎo)出操作啟動3個進(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_schema79命令行方式導(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)表空間。80命令行方式導(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表中部門號大于10,且工資大于2000的員工信息。C:\>expdpscott/tigerDIRECTORY=dumpdirDUMPFILE=exp2.dmpTABLES=empQUERY='emp:"WHEREdeptno=10ANDsal>2000"'NOLOGFILE=Y81參數(shù)文件方式導(dǎo)出首先創(chuàng)建一個名為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
82交互命令方式導(dǎo)出在當(dāng)前運(yùn)行作業(yè)的終端中按Ctrl+C組合鍵,進(jìn)入交互式命令狀態(tài);在另一個非運(yùn)行導(dǎo)出作業(yè)的終端中,通過導(dǎo)出作業(yè)名稱來進(jìn)行導(dǎo)出作業(yè)的管理。83示例執(zhí)行一個作業(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):Y845.3.3使用Impdp導(dǎo)入數(shù)據(jù)Impdp調(diào)用接口Impdp導(dǎo)入模式Impdp幫助及參數(shù)Impdp應(yīng)用實例85(1)Impdp調(diào)用接口命令行接口(Command-LineInterface)參數(shù)文件接口(ParameterFileInterface)交互式命令接口(Interactive-CommandInterface)86(2)Impdp導(dǎo)入模式全庫導(dǎo)入模式(FullImportMode)模式導(dǎo)入模式(SchemaMode)表導(dǎo)入模式(TableMode)表空間導(dǎo)入模式(TablespaceMode)傳輸表空間導(dǎo)入模式(TransportableTablespace)87(3)Impdp幫助及參數(shù)在操作系統(tǒng)的命令提示符窗口中輸入impdpHELP=Y命令,可以查看Impdp程序的使用、關(guān)鍵字(參數(shù))、交互命令等介紹。88(4)Impdp應(yīng)用實例命令行方式導(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=Y89命令行方式導(dǎo)入:模式導(dǎo)入模式使用備份文件scott.dmp恢復(fù)scott模式。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=scott.dmpSCHEMAS=scottJOB_NAME=imp_scott_schema如果要將一個備份模式的所有對象導(dǎo)入另一個模式中,可以使用REMAP_SCHEMAN參數(shù)設(shè)置。例如,將備份的scott模式對象導(dǎo)入oe模式中。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=scott.dmpLOGFILE=scott.logREMAP_SCHEMA=scott:oeJOB_NAME=imp_oe_schema90命令行方式導(dǎo)入:表空間導(dǎo)入模式利用EXAMPLE,USERS表空間的邏輯備份tsp.dmp恢復(fù)USERS,EXAMPLE表空間。C:\>impdpscott/tigerDIRECTORY=dumpdirDUMPFILE=tsp.dmpTABLESPACE
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二級建造師考試重點(diǎn)公路(實務(wù))
- 四年級數(shù)學(xué)(簡便運(yùn)算)計算題專項練習(xí)與答案
- 終止推廣合作協(xié)議書(2篇)
- 六年級上冊《比的意義》說課稿9篇
- 南京航空航天大學(xué)《材料工程基礎(chǔ)》2022-2023學(xué)年第一學(xué)期期末試卷
- 南京工業(yè)大學(xué)浦江學(xué)院《數(shù)據(jù)結(jié)構(gòu)》2021-2022學(xué)年期末試卷
- 某供電公司綜合工區(qū)門衛(wèi)施工組織設(shè)計
- 南京工業(yè)大學(xué)浦江學(xué)院《酒店人力資源管理》2023-2024學(xué)年第一學(xué)期期末試卷
- 《小雨沙沙》說課稿
- 租聘挖機(jī)合同(2篇)
- 快樂讀書吧-讀后分享課:《十萬個為什么》教學(xué)案列
- 2024年 貴州茅臺酒股份有限公司招聘筆試參考題庫含答案解析
- 2024年華融實業(yè)投資管理有限公司招聘筆試參考題庫含答案解析
- 2024年1月普通高等學(xué)校招生全國統(tǒng)一考試適應(yīng)性測試(九省聯(lián)考)歷史試題(適用地區(qū):貴州)含解析
- 兒童心理健康問題的評估與干預(yù)方案
- NB-T 47013.7-2012(JB-T 4730.7) 4730.7 承壓設(shè)備無損檢測 第7部分:目視檢測
- 空氣化工高精度氣體分裝及儲運(yùn)中心一期項目環(huán)評報告書
- 肝吸蟲護(hù)理查房課件
- 社區(qū)工作者案件調(diào)解流程
- 學(xué)校監(jiān)控使用安全應(yīng)急預(yù)案
- 汽車構(gòu)造復(fù)習(xí)
評論
0/150
提交評論