Oracle教程 (第6版)(Oracle 11g版) 課件 第9章 表空間、備份和恢復_第1頁
Oracle教程 (第6版)(Oracle 11g版) 課件 第9章 表空間、備份和恢復_第2頁
Oracle教程 (第6版)(Oracle 11g版) 課件 第9章 表空間、備份和恢復_第3頁
Oracle教程 (第6版)(Oracle 11g版) 課件 第9章 表空間、備份和恢復_第4頁
Oracle教程 (第6版)(Oracle 11g版) 課件 第9章 表空間、備份和恢復_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第9章表空間、備份和恢復表空間01創(chuàng)建表空間創(chuàng)建表空間創(chuàng)建表空間使用CREATETABLESPACE語句,創(chuàng)建的用戶必須擁有CREATETABLESPACE系統(tǒng)權限。語法格式為:CREATETABLESPACE表空間名 DATAFILE'文件路徑/文件名'[SIZE文件大小[K∣M]][REUSE] [AUTOEXTEND{OFF∣ON[NEXT磁盤空間大小[K∣M]] [MAXSIZE{UMLIMITED∣最大磁盤空間大小[K∣M]}]}] [MINMUMEXTENT數字值[K|M]] [DEFAULT存儲參數] [ONLINE∣OFFLINE] [LOGGING∣NOLOGGING] [PERMANENT∣TEMPORARY] [EXTENTMANAGEMENT[DICTIONARY∣LOCAL[AUTOALLOCATE∣UNIFORM[SIZE數字值[K∣M]]]]]相關參數說明如下。(1)DATAFILE:用于為表空間創(chuàng)建數據文件,格式與CREATEDATABASE語句中的DATAFILE相同。(2)AUTOEXTEND:用于指定是否禁止或允許自動擴展數據文件。(3)MAXSIZE:指定允許分配給數據文件的最大磁盤空間。(4)MINMUMEXTENT:指定最小的長度,默認為由操作系統(tǒng)和數據庫塊確定。(5)ONLINE和OFFLINE:ONLINE表示在創(chuàng)建表空間之后,使授權訪問該表空間的用戶立即可用該表空間;OFFLINE表示在創(chuàng)建表空間之后使該表空間不可用,默認為ONLINE。創(chuàng)建表空間(6)DEFAULT:為在該表空間創(chuàng)建的全部對象指定默認的存儲參數。其中,存儲參數的語法格式如下:存儲參數::=STORAGE( INITIAL第一個區(qū)的大小[K︱M] NEXT下一個區(qū)的大小[K︱M] MINEXTENTS區(qū)的最小個數︱UNLIMITED MAXEXTENTS區(qū)的最大個數

PCTINCREASE數字值 FREELISTS空閑列表數量 FREELISTGROUPS空閑列表組數量)(7)LOGGING/NOLOGGING:指定日志屬性,它表示將來的表、索引等是否需要進行日志處理。(8)PERMANENT:指定表空間,將用于保存永久對象,這是默認設置。(9)TEMPORARY:指定表空間,將用于保存臨時對象。(10)EXTENTMANAGEMENT:指定如何管理表空間的盤區(qū)。(11)DICTIONARY:指定使用字典表來管理表空間,這是默認設置。(12)LOCAL:指定本地管理表空間。(13)AUTOALLOCATE:指定表空間由系統(tǒng)管理,用戶不能指定盤區(qū)尺寸。(14)UNIFORM:指定使用SIZE字節(jié)的統(tǒng)一盤區(qū)來管理表空間,默認的SIZE為1MB。創(chuàng)建表空間【例9.1】

創(chuàng)建大小為50MB的表空間TEST,禁止自動擴展數據文件。CREATETABLESPACEtest LOGGING DATAFILE'E:\app\Administrator\oradata\XSCJ\TEST01.DBF'SIZE50M REUSEAUTOEXTENDOFF;執(zhí)行結果如圖。創(chuàng)建表空間【例9.2】

創(chuàng)建表空間DATA,允許自動擴展數據文件。CREATETABLESPACEdata LOGGING DATAFILE'E:\app\Administrator\oradata\XSCJ\DATA01.DBF'SIZE50M REUSEAUTOEXTENDONNEXT10MMAXSIZE200M EXTENTMANAGEMENTLOCAL;執(zhí)行結果如圖。02管理表空間管理表空間利用ALTERTABLESPACE命令可以修改現(xiàn)有的表空間或它的一個或多個數據文件??梢詾閿祿熘忻恳粋€數據文件指定各自的存儲擴展參數值;Oracle11g數據庫會在自動擴展數據文件時使用這些參數。語法格式為:ALTERTABLESPACE表空間名 [ADDDATAFILE∣TEMPFILE'路徑/文件名'[SIZE文件大小[K∣M]]][REUSE] [AUTOEXTEND{OFF∣ON[NEXT磁盤空間大小[K∣M]] [MAXSIZE{UNLIMITED∣最大磁盤空間大小[K∣M]}]}] [RENAMEDATAFILE'路徑/文件名',…nTO'路徑/新文件名'',…n]

[DEFAULTSTORAGE

存儲參數] [ONLINE∣OFFLINE[NORMAL∣TEMPORARY∣IMMEDIATE]] [LOGGING∣NOLOGGING] [READONLY∣WRITE] [PERMANENT] [TEMPORARY]相關參數說明如下。(1)ADDDATAFILE∣TEMPFILE:向表空間添加指定的數據文件或臨時文件。(2)RENAMEDATAFILE:對一個或多個表空間的數據文件重命名。(3)READONLY:表明表空間上不允許進一步寫操作。(4)READWRITE:表明在先前只讀表空間上允許寫操作。管理表空間【例9.3】

通過ALTERTABLESPACE命令把一個新的數據文件添加到DATA表空間,并指定了AUTOEXTENDON和MAXSIZE300M。ALTERTABLESPACEdata ADDDATAFILE'E:\app\Administrator\oradata\XSCJ\DATA02.DBF'SIZE50M REUSEAUTOEXTENDONNEXT50MMAXSIZE300M;執(zhí)行結果如圖。03刪除表空間刪除表空間如果不再需要表空間和其中保存的數據,就可以使用DROPTABLESPACE語句刪除已經創(chuàng)建的表空間。語法格式為:DROPTABLESPACE表空間名[INCLUDINGCONTENTS[{AND|KEEP}DATAFILES][CASCADECONSTRAINTS]];說明:在刪除表空間時,如果其中還保存有數據庫對象,則必須使用INCLUDINGCONTENTS子句,表示將表空間和其中保存的數據庫對象全部刪除,但對應的數據文件并不會從操作系統(tǒng)中被刪除?!纠?.4】

刪除表空間DATA及其對應的數據文件。DROPTABLESPACEdata INCLUDINGCONTENTSANDDATAFILES;第9章表空間、備份和恢復備份和恢復01備份概述1.備份原則2.數據庫備份應用3.數據庫備份類型備份概述1.備份原則(1)日志文件歸檔到磁盤。歸檔日志文件最好不要與數據庫文件或聯(lián)機重做日志文件存儲在同一個物理磁盤設備上。(2)如果數據庫文件備份到磁盤上,應使用單獨的磁盤或磁盤組保存數據文件的備份。備份到磁盤上通??梢栽谳^短時間內恢復。(3)應保持控制文件的多個備份,控制文件的備份應置于不同磁盤控制器下的不同磁盤設備上。增加控制文件可以先關閉數據庫,備份控制文件,改變服務器參數文件的參數CONTROL_FILES,再重新啟動數據庫即可。(4)聯(lián)機日志文件應為多個,每個組至少應保持兩個成員。日志組的兩個成員不應保存在同一個物理設備上,因為這將削弱多重日志文件的作用。(5)保持歸檔重做日志文件的多個備份,應在多個磁盤上保留備份。使用服務器參數文件中的LOG_ARCHIVE_DUPLEX_DEST參數和LOG_ARCHIVE_MIN_SUCCEED_DEST參數,Oracle系統(tǒng)會自動雙向歸檔日志文件。(6)通過在磁盤上保存最小備份和數據庫文件向前回滾所需的所有歸檔重做日志文件,在許多情況下可以使從備份中向前回滾數據庫或數據庫文件的過程簡化和加速。(7)增加、重命名、刪除日志文件和數據文件,以及改變數據庫結構和控制文件等操作都應備份,因為控制文件存放了數據庫的模式結構。此外,增加數據文件后也要備份。(8)若企業(yè)有多個Oracle數據庫,則應使用具有恢復目錄的Oracle系統(tǒng)恢復管理器。這將使用戶備份和恢復過程中引起錯誤的風險最小化。備份概述2.數據庫備份應用(1)實例失敗。從實例失敗中恢復應自動進行,數據庫需要訪問位于正確位置的所有控制文件、聯(lián)機重做日志文件和數據文件。數據庫中任何未提交的事務都要回滾。一個實例失?。ㄈ缬煞掌饕鸬氖。┲螅敂祿煲貑訒r,必須檢查數據庫報警日志中的錯誤信息。(2)磁盤失敗。磁盤失敗又稱介質失敗(MediaFailure),通常由磁盤損壞或磁盤讀錯誤引起。這時,磁盤上駐留的當前數據庫文件無法讀出。駐留聯(lián)機重做日志文件的磁盤應被鏡像,失敗時,它們不會丟失。鏡像可通過使用重做日志文件實現(xiàn),或在操作系統(tǒng)級制作鏡像文件。如果丟失的是控制文件,不管選擇什么備份方式都很容易恢復。每個數據庫都有其控制文件的多個備份(使數據庫保持同步),且存儲在不同的設備上。如果所有控制文件都丟失,可以使用CREATECONTROLFILE命令。該命令允許為數據庫創(chuàng)建一個新的控制文件,并指定數據庫中的所有數據文件、聯(lián)機重做日志文件和數據庫參數。如果對使用的參數有疑問并正在運行ARCHIVELOG備份,可用以下命令:ALTERDATABASEBACKUPCONTROLFILETOTRACE;備份概述如果丟失的是數據文件,可從熱備份中恢復,步驟如下。(1)從備份中把丟失的文件恢復到其原來位置。cp/backup/XSCJ/users01.dbf'/zhou/oradata/XSCJ(2)安裝數據庫。ORACLE_SID=XSCJ; exportORACLE_SIDORAENV_ASK=NO; exportORAENV_ASconnectsystem/Mm123456assysdbastartupmountXSCJ;(3)恢復數據庫。要求給出恢復所需的各歸檔日志文件名。RECOVERDATABASE;出現(xiàn)提示時,為需要的歸檔重做日志文件輸入文件名。(4)打開數據庫。ALTERDATABASEOPEN;當從備份恢復數據文件時,數據庫會辨認它是否來自數據庫停止前的那個時間點。備份概述3.數據庫備份類型備份一個Oracle數據庫有3種標準方式:導出(Export)、脫機備份(OfflineBackup)和聯(lián)機備份(OnlineBackup)。導出方式是數據庫的邏輯備份。脫機備份和聯(lián)機備份都是物理備份(低級備份)。(1)邏輯備份。將數據庫中數據備份到一個稱為“導出轉儲文件”的二進制系統(tǒng)文件中。導出有以下3種模式。用戶(User)模式:導出用戶所有對象及對象中的數據。表(Table)模式:導出用戶的所有表或者用戶指定的表。全局(Full)模式(數據庫模式):導出數據庫中所有對象,包括所有數據、數據定義和用來重建數據庫的存儲對象。導出備份可以導出整個數據庫、指定用戶或指定表。在導出期間,可以選擇是否導出與表相關的數據字典的信息,如權限、索引和與其相關的約束條件。導出備份有3種類型。完全型(CompleteExport):對所有表執(zhí)行全數據庫導出或僅對上次導出后修改過的表執(zhí)行全數據庫導出。積累型(Cumulative):備份上一次積累型備份所改變的數據。增量型(Incremental):備份上一次備份后改變的數據。備份概述(2)物理備份。物理備份是備份數據庫文件而不是其邏輯內容。Oracle系統(tǒng)支持兩種不同類型的物理備份:脫機備份(冷備份)和聯(lián)機備份(熱備份)。脫機備份在數據庫已經正常關閉的情況下進行。數據庫正常關閉后會給用戶提供一個完整的數據庫。當數據庫處于脫機備份狀態(tài)時,備份的文件包括所有數據文件、所有控制文件、所有聯(lián)機重做日志和服務器參數文件(可選)。當數據庫關閉時,對所有這些文件進行備份可以提供一個數據庫關閉時的完整鏡像,以后可以從備份中獲取整個文件集并恢復數據庫的功能。數據庫可能要求24小時運行,而且隨時會對數據進行操作。聯(lián)機備份可以在數據庫打開的情況下進行。02恢復概述1.實例恢復2.介質恢復恢復概述1.實例恢復實例恢復的目的就是將數據庫恢復到與故障之前的事務一致的狀態(tài)。實例恢復只需要使用聯(lián)機日志文件,不需要歸檔日志文件。實例恢復的最大特點是,Oracle系統(tǒng)在下次數據庫啟動時會自動執(zhí)行實例恢復。實例恢復由下列操作步驟完成。(1)為了解恢復數據文件中沒有記錄的數據,進行向前滾。該數據記錄于在線日志中,包括對回退段的內容恢復。(2)回退未提交的事務,按步驟(1)重新生成回退段所指定的操作。(3)釋放在發(fā)生故障時正在處理事務所持有的資源。(4)解決在發(fā)生故障時正經歷這一階段提交的任何懸而未決的分布事務?;謴透攀?.介質恢復介質故障是當一個文件或者磁盤不能讀取或寫入時出現(xiàn)的故障。這種狀態(tài)下的數據庫都是不一致的,需要DBA手動進行數據庫的恢復。這種恢復有兩種形式:(1)完全介質恢復。它使用重做數據或增量備份將數據庫更新到最近的時間點,通常在介質故障損壞數據文件或控制文件后執(zhí)行完全介質恢復操作。實施完全數據庫恢復時,根據數據庫文件的破壞情況,可以使用不同的方法。例如,當數據文件被物理破壞,數據庫不能正常啟動時,就可以對全部的或單個被破壞的數據文件進行完全介質恢復。(2)不完全介質恢復。這是在完全介質恢復不可能或者有特殊要求時進行的介質恢復。例如,系統(tǒng)表空間的數據文件被損壞、在線日志損壞或人為誤刪基本表和表空間等。這時可以進行不完全恢復,使數據庫恢復到故障前或用戶出錯之前的一個事務的一致性狀態(tài)。第9章表空間、備份和恢復導入和導出01導

出導

出可以對所有表執(zhí)行全數據庫導出(CompleteExport)或者僅對上次導出后修改過的表執(zhí)行全數據庫導出。增量導出有兩種不同類型:Incremental(增量)型和Cumulative(積累)型。Incremental型將上次導出后修改過的全部表導出,而Cumulative型將上次全部導出后修改過的表導出。可使用Export實用程序來壓縮數據段碎片的盤區(qū)。從命令行調用Export程序并且傳遞各類參數和參數值,可以完成導出操作。參數和參數值決定了導出的具體任務。如表所示為Export指定的運行期選項??梢栽凇懊钐崾痉贝翱谥休斎搿癊XPHELP=Y”調用EXP命令的幫助信息。導

出導出有以下3種模式。(1)交互模式。在輸入EXP命令后,根據系統(tǒng)的提示輸入導出參數,如用戶名、口令和導出類型等參數。(2)命令行模式。命令行模式和交互模式類似,不同的是使用命令模式時,只能在模式被激活后,才能把參數和參數值傳遞給導出程序。(3)參數文件模式。參數文件模式的關鍵參數是Parfile。Parfile的對象是一個包含激活控制導出對話參數和參數值的文件名。導

出【例9.5】以交互模式進行數據庫XSCJ的XSB表導出。執(zhí)行結果如圖。02導

入導

入當數據庫出現(xiàn)錯誤的修改或刪除操作時,可以利用導入操作通過導出文件恢復重要的數據。在使用應用程序前,將對其操作的表導出到一個概要中,這樣,如果由于應用程序中的錯誤而刪除或修改了表中數據時,就可以從已經導出到概要的備份表中恢復誤操作的數據。導入操作可把一個操作系統(tǒng)中的Oracle數據庫導出后再導入到另一個操作系統(tǒng)中。導入操作既可以交互進行,也可通過命令進行。導入操作選項同導出的基本一樣,如表。導入操作中,如果參數相互沖突或者引起指令不一致時操作就會失敗。例如,設置“FULL=Y”和“OWNER=SYSTEM”,因為FULL參數調用FULL導入,而OWNER參數指定USER導入。導

入【例9.6】以交互模式進行XSCJ數據庫中XSB表的導入。為了查看導入的效果,先將XSB表刪除:DROPTABLExsb;導入結果如圖。導

入下面介紹命令行模式和參數模式的EXP用法與IMP用法。(1)命令行模式。命令行模式其實與交互模式的道理一樣,只是命令行模式將交互模式中逐步輸入的數據在一行命令中全部輸入。例如,要導出XSB表,可以在命令提示符下輸入命令如下:EXPUSERID=SCOTT/Mm123456FULL=NBUFFER=10000FILE=xsb.DMPTABLES=xsb執(zhí)行結果如圖。導

入(2)參數模式。參數模式其實就是將命令行模式中命令后面所帶的參數寫在一個參數文件中,然后再使用命令,使其后面帶一個調用該文件的參數。通過普通的文本文件編輯器就可以創(chuàng)建這個文件。為了便于標識,將該參數文件的后綴命名為.parfile。以下是一個參數文件的內容:USERID=SCOTT/Mm123456FULL=NBUFFER=10000FILE=xsb.DMPTABLES=xsb使用參數模式執(zhí)行過程如下:EXPPARFILE=xsb.PARFILE第9章表空間、備份和恢復脫機備份脫機備份在磁盤空間容許的情況下,將這些文件復制到磁盤上。冷備份一般在SQL*Plus中進行。在進行備份前,應該確定備份哪些文件,通過查詢V$DATAFILE視圖可以獲取數據文件的列表;通過查詢V$LOGFILE視圖可以獲取聯(lián)機重做日志文件的列表;通過以下語句可查詢控制文件的列表:SHOWPARAMENTERCONTROL_FILES;【例9.7】把XSCJ數據庫的所有數據文件、重做日志文件和控制文件都進行備份。(1)正常關閉要備份的實例,在“命令提示符”窗口中輸入如下命令:sqlplus/nologconnectscott/Mm123456assysdbashutdownnormal(2)備份數據庫。使用操作系統(tǒng)的備份工具,備份所有的數據文件、重做日志文件、控制文件和參數文件。(3)啟動數據庫:startupmount第9章表空間、備份和恢復聯(lián)機備份01以ARCHIVELOG方式運行數據庫

以ARCHIVELOG方式運行數據庫

進行聯(lián)機備份時,既可以使用PL/SQL

語句,也可以使用備份向導,但都要求數據庫在ARCHIVELOG方式下運行。下面說明如何進入ARCHIVELOG方式。(1)進入“命令提示符”窗口:SQLPLUS/NOLOG(2)以SYSDBA身份和數據庫相連:CONNECTSCOTT/Mm123456ASSYSDBA(3)使數據庫在ARCHIVELOG方式下運行:SHUTDOWNIMMEDIATESTARTUPMOUNTALTERDATABASEARCHIVELOG;ARCHIVELOGSTART;ALTERDATABASEOPEN;以ARCHIVELOG方式運行數據庫

下面的命令將從ServerManager中顯示當前數據庫的ARCHIVELOG狀態(tài):ARCHIVELOGLIST整個過程的SQL*Plus窗口如圖。02執(zhí)行數據庫聯(lián)機備份執(zhí)行數據庫聯(lián)機備份(1)逐個備份表空間數據文件使用ALTERTABLESPACEBEGINBACKUP語句將表空間設置為備份狀態(tài),例如,標記表空間SYSTEM備份開始的語句如下:ALTERTABLESPACESYSTEMBEGINBACKUP;在“命令提示符”窗口中使用操作系統(tǒng)提供的命令備份表空間中的數據文件,例如:COPYE:\app\Administrator\oradata\XSCJ\SYSTEM01.DBFd:\backup所有的數據文件備份完后,要使用ALTERTABLESPACEENDBACKUP指出結束聯(lián)機備份,將表空間恢復到正常狀態(tài),例如:ALTERTABLESPACESYSTEMENDBACKUP;(2)備份歸檔重做日志文件停止當前數據庫的ARCHIVELOG狀態(tài):ARCHIVELOGSTART;記錄歸檔重做日志目標目錄中的文件,備份歸檔重做日志文件,并且使用ALTERDATABASEBACKUPCONTROLFILE命令備份控制文件:ALTERDATABASEBACKUPCONTROLFILETO'd:\backup\file.bak';第9章表空間、備份和恢復數

泵01數據泵概述數據泵概述數據泵(DataPump)是Oracle11g數據庫提供的一個實用程序,它可以用從數據庫中高速導出或加載數據庫的方法,自動管理多個并行的數據流。數據泵可以實現(xiàn)在測試環(huán)境、開發(fā)環(huán)境、生產環(huán)境、高級復制或熱備份數據庫之間的快速數據遷移,還能實現(xiàn)部分或全部數據庫的邏輯備份,以及跨平臺的可傳輸表的空間備份。數據泵技術相對應的工具是DataPumpExport和DataPumpImport。它的功能與前面介紹的EXP和IMP類似,所不同的是數據泵高速并行的設計使服務器運行時,可執(zhí)行導入和導出任務的快速裝載或卸載大量

溫馨提示

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

最新文檔

評論

0/150

提交評論