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

下載本文檔

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

文檔簡介

Oracle11g(第5版第9章 表空間、備份和恢復(fù)表空間創(chuàng)建表空間01創(chuàng)建表空間創(chuàng)建表空間使用CREATE

TABLESPACE語句,創(chuàng)建的用戶必須擁有CREATE

TABLESPACE系統(tǒng)權(quán)限。語法格式為:CREATE

TABLESPACE<表空間名>DATAFILE"<文件路徑>/<文件名>"[SIZE<文件大小>[K∣M]][REUSE]

[AUTOEXTEND[OFF∣ON[NEXT<磁盤空間大小>[K∣M]][MAXSIZE[UMLIMITED∣<最大磁盤空間大小>[K∣M]]]][MINMUM

EXTENT<數(shù)字值>[K

|

M]]

[DEFAULT

<存儲參數(shù)>][

ONLINE∣OFFLINE

][

LOGGING∣NOLOGGING

]

[

PERMANENT∣TEMPORARY

][

EXTENT

MANAGEMENT

[

DICTIONARY∣LOCAL

[

AUTOALLOCATE∣UNIFORM[SIZE<數(shù)字值>[K∣M]]]]]創(chuàng)建表空間說明:DATAFILE子句:用于為表空間創(chuàng)建數(shù)據(jù)文件,格式與CREATE

DATABASE語句中的DATAFILE子句相同。AUTOEXTEND:用于指定是否禁止或允許自動擴展數(shù)據(jù)文件。若選擇OFF,則禁止自動擴展數(shù)據(jù)文件。若選擇ON,則允許自動擴展數(shù)據(jù)文件。NEXT指定當(dāng)需要更多盤區(qū)時分配給數(shù)據(jù)文件的磁盤空間。MAXSIZE:指定允許分配給數(shù)據(jù)文件的最大磁盤空間。其中,UMLIMITED表示對分配給數(shù)據(jù)文件的磁盤空間沒有設(shè)置限制。MINMUM

EXTENT:指定最小的長度,默認為操作系統(tǒng)和數(shù)據(jù)庫塊確定。ONLINE和OFFLINE:ONLINE表示在創(chuàng)建表空間之后,使授權(quán)訪問該表空間的用戶立即可用該表空間;

OFFLINE表示在創(chuàng)建表空間之后使該表空間不可用,默認為ONLINE。創(chuàng)建表空間(6)DEFAULT:為在該表空間創(chuàng)建的全部對象指定默認的存儲參數(shù)。其中,<存儲參數(shù)>的語法格式如下:<存儲參數(shù)>::=STORAGE(INITIAL<第一個區(qū)的大小>[K︱M]

NEXT<下一個區(qū)的大小>[K︱M]

MINEXTENTS<區(qū)的最小個數(shù)>︱UNLIMITEDMAXEXTENTS<區(qū)的最大個數(shù)>

PCTINCREASE<數(shù)字值>FREELISTS<空閑列表數(shù)量>

FREELIST

GROUPS<空閑列表組數(shù)量>)INITIAL指定對象(段)的第一個區(qū)的大小,單位為KB或MB,默認值是5個數(shù)據(jù)塊的大??;NEXT指定下一個區(qū)以及后續(xù)區(qū)的大小,單位為KB或MB,最小值是1個數(shù)據(jù)塊的大小;MINEXTENTS指定創(chuàng)建對象(段)時就

應(yīng)該分配的區(qū)的個數(shù),默認為1;MAXEXTENTS指定可以為一個對象分配的區(qū)的最大個數(shù),該參數(shù)最小值是

MINEXTENTS;PCTINCREASE指定第3個區(qū)以及后續(xù)區(qū)在前面區(qū)的基礎(chǔ)之上增加的百分比;FREELISTS指定表、簇或索引的每個空閑列表組的空閑列表數(shù)量;FREELIST

GROUP指定表、簇或索引的空閑列表組的數(shù)量。創(chuàng)建表空間LOGGING/NOLOGGING:指定日志屬性,它表示將來的表、索引等是否需要進行日志處理。默認值為LOGGING。PERMANENT:指定表空間,將用于保存永久對象,這是默認設(shè)置。TEMPORARY:指定表空間,將用于保存臨時對象。EXTENT

MANAGEMENT:指定如何管理表空間的盤區(qū)。DICTIONARY:指定使用字典表來管理表空間,這是默認設(shè)置。LOCAL:指定本地管理表空間。AUTOALLOCATE:指定表空間由系統(tǒng)管理,用戶不能指定盤區(qū)尺寸。UNIFORM:指定使用SIZE字節(jié)的統(tǒng)一盤區(qū)來管理表空間。默認的SIZE為1MB。如果既沒指定

AUTOALLOCATE又沒指定UNIFORM,那么默認為AUTOALLOCATE。創(chuàng)建表空間【例9.1】創(chuàng)建大小為50MB的表空間TEST,禁止自動擴展數(shù)據(jù)文件。CREATE

TABLESPACE

TESTLOGGINGDATAFILE

"E:\app\Administrator\oradata\XSCJ\TEST01.DBF"

SIZE

50MREUSE

AUTOEXTEND

OFF;執(zhí)行結(jié)果如圖9.1所示。創(chuàng)建表空間【例9.2】創(chuàng)建表空間DATA,允許自動擴展數(shù)據(jù)文件。CREATE

TABLESPACE

DATALOGGINGDATAFILE

"E:\app\Administrator\oradata\XSCJ\DATA01.DBF"

SIZE

50MREUSE

AUTOEXTEND

ON

NEXT

10M

MAXSIZE

200MEXTENT

MANAGEMENT

LOCAL;執(zhí)行結(jié)果如圖9.2所示。管理表空間02管理表空間利用ALTER

TABLESPACE命令可以修改現(xiàn)有的表空間或它的一個或多個數(shù)據(jù)文件??梢詾閿?shù)據(jù)庫中每一個數(shù)據(jù)文件指定各自的存儲擴展參數(shù)值;Oracle

11g會在自動擴展數(shù)據(jù)文件時使用這些參數(shù)。語法格式為:ALTER

TABLESPACE<表空間名>[ADD

DATAFILE∣TEMPFILE"<路徑>/<文件名>"[SIZE<文件大小>[K∣M]]

[REUSE][AUTOEXTEND[OFF∣ON[NEXT<磁盤空間大小>[K∣M]]]][MAXSIZE[UNLIMITED∣<最大磁盤空間大小>[K∣M]]][RENAME

DATAFILE"<路徑>/<文件名>",…n

TO"<路徑>/<新文件名>"",…n]

[DEFAULT

STORAGE

<存儲參數(shù)>][

ONLINE∣OFFLINE

[

NORMAL∣TEMPORARY∣IMMEDIATE

]

][

LOGGING∣NOLOGGING

][

READ

ONLY∣WRITE

][

PERMANENT

][

TEMPORARY

]管理表空間說明:(1)ADD

DATAFILE∣TEMPFILE:向表空間添加指定的數(shù)據(jù)文件或臨時文件。(2)RENAME

DATAFILE:對一個或多個表空間的數(shù)據(jù)文件重命名。在重命名數(shù)據(jù)文件之前要使表空間脫機。(3)READ

ONLY:表明表空間上不允許進一步寫操作。該子句在現(xiàn)有的事務(wù)全部提交或回滾后才生效,使表空間變成只讀。(4)READ

WRITE:表明在先前只讀表空間上允許寫操作。管理表空間【例9.3】通過ALTER

TABLESPACE命令把一個新的數(shù)據(jù)文件添加到DATA表空間,并指定了AUTOEXTENDON和MAXSIZE

300M。ALTER

TABLESPACE

DATAADD

DATAFILE

"E:\app\Administrator\oradata\XSCJ\DATA02.DBF"

SIZE

50MREUSE

AUTOEXTEND

ON

NEXT

50M

MAXSIZE

500M;執(zhí)行結(jié)果如圖9.3所示。刪除表空間03刪除表空間如果不再需要表空間和其中保存的數(shù)據(jù),可以使用DROP

TABLESPACE語句刪除已經(jīng)創(chuàng)建的表空間。語法格式為:DROP

TABLESPACE<表空間名>[

INCLUDING

CONTENTS

[

{AND

|

KEEP}

DATAFILES

][

CASCADE

CONSTRAINTS

]]

;說明:在刪除表空間時,如果其中還保存有數(shù)據(jù)庫對象,則必須使用INCLUDING

CONTENTS子句,表示將表空間和其中保存的數(shù)據(jù)庫對象全部刪除,但對應(yīng)的數(shù)據(jù)文件并不會從操作系統(tǒng)中被刪除?!纠?.4】刪除表空間DATA及其對應(yīng)的數(shù)據(jù)文件。DROP

TABLESPACE

DATAINCLUDING

CONTENTS

AND

DATAFILES;Oracle11g(第5版第9章 表空間、備份和恢復(fù)備份和恢復(fù)概述備份概述01備份原則數(shù)據(jù)庫備份應(yīng)用數(shù)據(jù)庫備份類型備份概述1.備份原則日志文件歸檔到磁盤。歸檔日志文件最好不要與數(shù)據(jù)庫文件或聯(lián)機重做日志文件存儲在同一個物理磁盤設(shè)備上。應(yīng)保持控制文件的多個備份,控制文件的

備份應(yīng)置于不同磁盤控制器下的不同磁盤

設(shè)備上。增加控制文件可以先關(guān)閉數(shù)據(jù)庫,備份控制文件,改變服務(wù)器參數(shù)文件的參

數(shù)CONTROL_FILES,再重新啟動數(shù)據(jù)庫即可。聯(lián)機日志文件應(yīng)為多個,每個組至少應(yīng)保持兩個成員。日志組的兩個成員不應(yīng)保存在同一個物理設(shè)備上,因為這將削弱多重日志文件的作用。(1)(3)(2)如果數(shù)據(jù)庫文件備份到磁盤上,應(yīng)使用單獨的磁盤或磁盤組保存數(shù)據(jù)文件的備份。備份到磁盤上通??梢栽谳^短時間內(nèi)恢復(fù)。(4)備份概述(5)(7)(6)(8)保持歸檔重做日志文件的多個備份,在多個磁盤上都保留備份。使用服務(wù)器參數(shù)文件中的

LOG_ARCHIVE_DUPLEX_DEST和LOG_ARCHIVE_MIN_SUCCEED_DEST參數(shù),Oracle會自動雙向歸檔日志文件。通過在磁盤上保存最小備份和數(shù)據(jù)庫文件向前回滾所需的所有歸檔重做日志文件,在許多情況下可以使得從備份中向前回滾數(shù)據(jù)庫或數(shù)據(jù)庫文件的過程簡化和加速。增加、重命名、刪除日志文件和數(shù)據(jù)文件,改變數(shù)據(jù)庫結(jié)構(gòu)和控制文件等操作都應(yīng)備份,因為控制文件存放數(shù)據(jù)庫的模式結(jié)構(gòu)。此外,增加數(shù)據(jù)文件后也要備份。若企業(yè)有多個Oracle數(shù)據(jù)庫,則應(yīng)使用具有恢復(fù)目錄的Oracle恢復(fù)管理器。這將使用戶備份和恢復(fù)過程中的錯誤引起的風(fēng)險最小化。備份概述2.?dāng)?shù)據(jù)庫備份應(yīng)用下面討論如何將集成的數(shù)據(jù)庫備份用于實例失敗和磁盤失敗。(1)實例失敗。從實例失敗中恢復(fù)應(yīng)自動進行,數(shù)據(jù)庫需要訪問位于正確位置的所有控制文件、聯(lián)機重做日志文件和數(shù)據(jù)文件。數(shù)據(jù)庫中任何未提交的事務(wù)都要回滾。一個實例失?。ɡ缬煞?wù)器引起的失?。┲?,當(dāng)數(shù)據(jù)庫要重啟動時,必須檢查數(shù)據(jù)庫報警日志中的錯誤信息。當(dāng)由實例失敗引發(fā)數(shù)據(jù)庫重啟時,Oracle會檢查數(shù)據(jù)文件和聯(lián)機重做日志文件,并把所有文件同步到同一個時間點上。即使數(shù)據(jù)庫未在ARCHIVELOG方式中運行,Oracle也將執(zhí)行這種同步。(2)磁盤失敗。磁盤失敗也叫介質(zhì)失?。∕edia

Failure),通常由磁盤損壞或磁盤上讀錯誤引起。這時,磁盤上駐留的當(dāng)前數(shù)據(jù)庫文件無法

讀出。駐留聯(lián)機重做日志文件的磁

盤應(yīng)被鏡像,失敗時,它們不會丟

失。鏡像可通過使用重做日志文件

實現(xiàn),或在操作系統(tǒng)級制作鏡像文

件。如果丟失的是控制文件,不管選擇什么備份方式都很容易恢復(fù)。每個數(shù)據(jù)庫都有其控制文件的多個備份(使數(shù)據(jù)庫保持同步),且存儲在不同的設(shè)備上。備份概述如果所有控制文件都丟失,可以使用CREATECONTROLFILE命令。該命令允許為數(shù)據(jù)庫創(chuàng)建一個新的控制文件,并指定數(shù)據(jù)庫中的所有數(shù)據(jù)文件、聯(lián)機重做日志文件和數(shù)據(jù)庫參數(shù)。如果對使用的參數(shù)有疑問并正在運行ARCHIVELOG備份,可用以下命令:ALTER

DATABASE

BACKUP

CONTROLFILE

TO

TRACE;當(dāng)執(zhí)行該命令時,系統(tǒng)將把一條合適的CREATE

CONTROLFILE命令寫入到跟蹤文件。這時,可根據(jù)需要編輯這個由Oracle創(chuàng)建的跟蹤文件。如果丟失的是歸檔重做日志文件,就無法恢復(fù)。因此,最重要的是使歸檔重做日志文件目標設(shè)備也保持鏡像。歸檔重做日志文件與聯(lián)機重做日志文件同等重要。備份概述如果丟失的是數(shù)據(jù)文件,可從前一天晚上的熱備份中恢復(fù),步驟如下。(1)從備份中把丟失的文件恢復(fù)到其原來位置。cp

/backup/XSCJ/users01.dbf"

/zhou/oradata/XSCJ(2)安裝數(shù)據(jù)庫。ORACLE_SID=XSCJ;ORAENV_ASK=NO;export

ORACLE_SIDexport

ORAENV_ASconnect

system/Mm123456

as

sysdbastartup

mount

XSCJ;恢復(fù)數(shù)據(jù)庫。要求給出恢復(fù)所需的各歸檔日志文件名。RECOVER

DATABASE;出現(xiàn)提示時,為需要的歸檔重做日志文件輸入文件名。另外,當(dāng)數(shù)據(jù)庫恢復(fù)操作發(fā)出提示時,可以使用AUTO選項。打開數(shù)據(jù)庫。ALTER

DATABASE

OPEN;當(dāng)從備份恢復(fù)數(shù)據(jù)文件時,數(shù)據(jù)庫會辨認它是否來自數(shù)據(jù)庫停止前的那個時間點。要找到那個時間點,就要應(yīng)用歸檔重做日志文件里找到的事務(wù)。備份概述3.?dāng)?shù)據(jù)庫備份類型備份一個Oracle數(shù)據(jù)庫有三種標準方式:導(dǎo)出(Export)、脫機備份(Offline

Backup)和聯(lián)機備份(OnlineBackup)。導(dǎo)出方式是數(shù)據(jù)庫的邏輯備份。脫機備份和聯(lián)機備份都是物理備份(也稱為低級備份)。(1)邏輯備份。導(dǎo)出是將數(shù)據(jù)庫中數(shù)據(jù)備份到一個稱為“導(dǎo)出轉(zhuǎn)儲文件”的二進制系統(tǒng)文件中。導(dǎo)出有以下三種模式。用戶(User)模式:導(dǎo)出用戶所有對象以及對象中的數(shù)據(jù)。表(Table)模式:導(dǎo)出用戶的所有表或者用戶指定的表。全局(Full)模式(也稱為數(shù)據(jù)庫模式):導(dǎo)出數(shù)據(jù)庫中所有對象,包括所有數(shù)據(jù)、數(shù)據(jù)定義和用來重建數(shù)據(jù)庫的存儲對象。備份概述導(dǎo)出備份可以導(dǎo)出整個數(shù)據(jù)庫、指定用戶或指定表。在導(dǎo)出期間,可以選擇是否導(dǎo)出與表相關(guān)的數(shù)據(jù)字典的信息,如權(quán)限、索引和與其相關(guān)的約束條件。導(dǎo)出備份有三種類型。完全型(CompleteExport):對所有表執(zhí)行全數(shù)據(jù)庫導(dǎo)出或僅對上次導(dǎo)出后修改過的表執(zhí)行全數(shù)據(jù)庫導(dǎo)出。積累型(Cumulative):備份上一次積累型備份所改變的數(shù)據(jù)。增量型(Incremental):備份上一次備份后改變

的數(shù)據(jù)。導(dǎo)入是導(dǎo)出的逆過程,導(dǎo)入時讀取導(dǎo)出創(chuàng)建的轉(zhuǎn)儲二進制文件以恢復(fù)數(shù)據(jù)??梢詫?dǎo)入全部或部分已導(dǎo)出的數(shù)據(jù)。如果導(dǎo)入一個完全導(dǎo)出的整個導(dǎo)出轉(zhuǎn)儲文件,則所有數(shù)據(jù)庫對象(包括表空間、數(shù)據(jù)文件和用戶)都會在導(dǎo)入

時創(chuàng)建。如果只打算從導(dǎo)出轉(zhuǎn)儲文件中導(dǎo)入部分數(shù)據(jù),那么表空間、數(shù)據(jù)文件和將擁有并存儲那些數(shù)據(jù)的用戶

必須在導(dǎo)入前設(shè)置好。備份概述(2)物理備份。物理備份是備份數(shù)據(jù)庫文件而不是其邏輯內(nèi)容。Oracle支持兩種不同類型的物理備份:脫機備份(也稱為冷備份)和聯(lián)機備份(也稱為熱備份)。脫機備份在數(shù)據(jù)庫已經(jīng)正常關(guān)閉的情況下進行。數(shù)據(jù)庫正常關(guān)閉后會給用戶提供一個完整的數(shù)據(jù)庫。當(dāng)數(shù)據(jù)庫處于脫機備份狀態(tài)時,備份的文件包括所有數(shù)據(jù)文件、所有控制文件、所有聯(lián)機重做日志和服務(wù)器參數(shù)文件(可選)。當(dāng)數(shù)據(jù)庫關(guān)閉時,對所有這些文件進行備份可以提供一個數(shù)據(jù)庫關(guān)閉時的完整鏡像。以后可以從備份中獲取整個文件集并恢復(fù)數(shù)據(jù)庫的功能。數(shù)據(jù)庫可能要求24小時運行,而且隨時會對數(shù)據(jù)進行操作。聯(lián)機備份可以在數(shù)據(jù)庫打開的情況下進行。一般通過使用ALTER命令改變表空間的狀態(tài)來開始進行備份,備份完成后恢復(fù)原來狀態(tài),否則重做日志會錯配,在下次啟動數(shù)據(jù)庫時引起表空間的修改。進行聯(lián)機備份時要求數(shù)據(jù)庫必須在歸檔方式下操作,在數(shù)據(jù)庫不使用或使用率低的情況下進行,同時要有大量的存儲空間。恢復(fù)概述02實例恢復(fù)介質(zhì)恢復(fù)恢復(fù)概述1.實例恢復(fù)在數(shù)據(jù)庫實例的運行期間,當(dāng)意外掉電、后臺進程故障或人為中止時出現(xiàn)實例故障,此時需要實例恢復(fù)。如果出現(xiàn)實例故障,由于Oracle實例沒有正常關(guān)閉,而且當(dāng)實例發(fā)生故障時,服務(wù)器可能正在管理對數(shù)據(jù)庫信息進行處理的事務(wù)。在這種情況下,數(shù)據(jù)庫來不及執(zhí)行一個數(shù)據(jù)庫檢查點,以保存內(nèi)存緩沖區(qū)中的數(shù)據(jù)到數(shù)據(jù)文件,這會造成數(shù)據(jù)文件中數(shù)據(jù)的不一致性。實例恢復(fù)的目的就是將數(shù)據(jù)庫恢復(fù)到與故障之前的事務(wù)一致的狀態(tài)。實例恢復(fù)只需要聯(lián)機日志文件,不需要歸檔日志文件。實例恢復(fù)的最大特點是,Oracle在下次數(shù)據(jù)庫啟動時會自動地執(zhí)行實例恢復(fù)。實例恢復(fù)由下列操作步驟完成。(1)(2)(3)(4)為了解恢復(fù)數(shù)據(jù)文件中沒有記錄的數(shù)據(jù),進行向前滾。該數(shù)據(jù)記錄在在線日志中,包括對回退段的內(nèi)容恢復(fù)。回退未提交的事務(wù),按步驟(1)重新生成回退段所指定的操作。釋放在發(fā)生故障時正在

處理事務(wù)所持有的資源。解決在發(fā)生故障時正經(jīng)歷這一階段提交的任何懸而未決的分布事務(wù)。恢復(fù)概述介質(zhì)恢復(fù)如果在聯(lián)機備份時發(fā)現(xiàn)實例故障,則需介質(zhì)恢復(fù)。介質(zhì)恢復(fù)主要在由于存儲介質(zhì)發(fā)生故障,導(dǎo)致數(shù)據(jù)文件被破壞時使用。介質(zhì)故障是當(dāng)一個文件或者磁盤不能讀取或?qū)懭霑r出現(xiàn)的故障。這種狀態(tài)下的數(shù)據(jù)庫都是不一致的,這需要DBA手動進行數(shù)據(jù)庫的恢復(fù)。這種恢復(fù)有兩種形式:完全介質(zhì)恢復(fù)和不完全介質(zhì)恢復(fù)。完全介質(zhì)恢復(fù)。它使用重做數(shù)據(jù)或增量備份將數(shù)據(jù)庫更新到最近的時間點,通常在介質(zhì)故障損壞數(shù)據(jù)文件或控制文件后執(zhí)行完全介質(zhì)恢復(fù)操作。實施完全數(shù)據(jù)庫恢復(fù)時,根據(jù)數(shù)據(jù)庫文件的破壞情況,可以使用不同的方法。例如,當(dāng)數(shù)據(jù)文件被物理破壞,數(shù)據(jù)庫不能正常啟動時,可以對全部的或單個被破壞的數(shù)據(jù)文件進行完全介質(zhì)恢復(fù)。不完全介質(zhì)恢復(fù)。這是在完全介質(zhì)恢復(fù)不可能或者有特殊要求時進行的介質(zhì)恢復(fù)。例如,系

統(tǒng)表空間的數(shù)據(jù)文件被損壞、在線日志損壞或人為誤刪基表和表空間等。這時可以進行不完全恢復(fù),使數(shù)據(jù)庫恢復(fù)到故障前或用戶出錯之前的一個事務(wù)的一致性狀態(tài)。不完全介質(zhì)恢復(fù)有不同類型的使

用,取決于需要不完全介質(zhì)恢復(fù)的情況。它有下列類型:基于撤銷、基于時間和基于修改的不完全

恢復(fù)。①基于撤銷(CANCEL)恢復(fù):在某種情況下,不完全介質(zhì)恢復(fù)必須被控制,DBA可撤銷在指定點的操作?;诔蜂N的恢復(fù)在由于一個或多個日志組(在線或歸檔的)已被介質(zhì)故障所破壞,不能用于恢復(fù)過程時使用。所以介質(zhì)恢復(fù)必須受控制,以致在使用最近、未損的日志組于數(shù)據(jù)文件后中止恢復(fù)操作。②基于時間(TIN/IE)和基于修改(SCN)的恢復(fù):如果DBA希望恢復(fù)到過去的某個指定點,這是一種理想的不完全介質(zhì)恢復(fù),一般發(fā)生在恢復(fù)到某個特定操作之前,如恢復(fù)到意外刪除某個數(shù)據(jù)表之前。Oracle11g(第5版第9章 表空間、備份和恢復(fù)導(dǎo)入/導(dǎo)出導(dǎo)

出01導(dǎo)

出數(shù)據(jù)庫的邏輯備份步驟包括讀一個數(shù)據(jù)庫記錄集和將記錄集寫入一個文件中。這些記錄的讀取與其物理位置無關(guān)。在Oracle中,Export實用程序就是用來完成這樣的數(shù)據(jù)庫備份的。若要恢復(fù)使用由一個導(dǎo)出生成的文件,可使用Import實用程序。Oracle的Export實用程序用來讀取數(shù)據(jù)庫(包括數(shù)據(jù)字典)和把輸出寫入一個稱為導(dǎo)出轉(zhuǎn)

儲文件(Export

Dump

File)的二進制文件中??梢詫?dǎo)出整個數(shù)據(jù)庫、指定用戶或指定表。

在導(dǎo)出期間,可以選擇是否導(dǎo)出與表相關(guān)的

數(shù)據(jù)字典信息。例如,權(quán)限、索引和與其相

關(guān)的約束條件。Export所寫的文件包括完全

重建全部被選對象所需的命令??梢詫λ斜韴?zhí)行全數(shù)據(jù)庫導(dǎo)出(CompleteExport)或者僅對上次導(dǎo)出后修改過的表執(zhí)行全數(shù)據(jù)庫導(dǎo)出。增量導(dǎo)出有兩種不同類型:

Incremental(增量)型和Cumulative(積累)型。Incremental導(dǎo)出將導(dǎo)出上次導(dǎo)出后修改過的全部表;而Cumulative導(dǎo)出將導(dǎo)出上次全導(dǎo)出后修改過的表??墒褂肊xport實用程序來壓縮數(shù)據(jù)段碎片的盤區(qū)。導(dǎo)

出從命令行調(diào)用Export程序并且傳遞各類參數(shù)和參數(shù)值,可以完成導(dǎo)出操作。參數(shù)和參數(shù)值決定了導(dǎo)出的具體任務(wù)。表9.1列出了Export指定的運行期選項??梢栽凇懊钐崾痉贝翱谥休斎搿癊XPHELP=Y”調(diào)用EXP命令的幫助信息。導(dǎo)出有以下三種模式。(1)交互模式。在輸入EXP命令后,根據(jù)系統(tǒng)的提示輸入導(dǎo)出參數(shù),如用戶名、口令和導(dǎo)出類型等參數(shù)。(2)命令行模式。命令行模式和

交互模式類似,不同的是使用命令

模式時,只能在模式被激活后,才

能把參數(shù)和參數(shù)值傳遞給導(dǎo)出程序。(3)參數(shù)文件模式。參數(shù)文件模

式的關(guān)鍵參數(shù)是Parfile。Parfile的對象是一個包含激活控制導(dǎo)出對話的參數(shù)和參數(shù)值的文件名。導(dǎo)

出【例9.5】以交互模式進行數(shù)據(jù)庫XSCJ的表XSB的導(dǎo)出。執(zhí)行的過程與結(jié)果如圖9.4所示。數(shù)據(jù)導(dǎo)出完畢后,在“C:\Documents

and

Settings\Administrator”目錄下的XSB.DMP文件就是導(dǎo)出文件。導(dǎo)

入02導(dǎo)

入導(dǎo)入數(shù)據(jù)可以通過Oracle的Import實用程序進行,可以導(dǎo)

入全部或部分數(shù)據(jù)。如果導(dǎo)入

一個全導(dǎo)出的導(dǎo)出轉(zhuǎn)儲文件,

則包括表空間、數(shù)據(jù)文件和用

戶在內(nèi)的所有數(shù)據(jù)庫對象都會

在導(dǎo)入時創(chuàng)建。不過,為了在

數(shù)據(jù)庫中指定對象的物理分配,通常需要預(yù)先創(chuàng)建表空間和用

戶。如果只從導(dǎo)出轉(zhuǎn)儲文件中

導(dǎo)入部分數(shù)據(jù),那么表空間、

數(shù)據(jù)文件和用戶必須在導(dǎo)入前

設(shè)置好。當(dāng)數(shù)據(jù)庫出現(xiàn)錯誤的修改或刪

除操作時,可以利用導(dǎo)入操作

通過導(dǎo)出文件恢復(fù)重要的數(shù)據(jù)。在使用應(yīng)用程序前,將對其操

作的表導(dǎo)出到一個概要中,這

樣,如果由于應(yīng)用程序中的錯

誤而刪除或修改了表中數(shù)據(jù)時,可以從已經(jīng)導(dǎo)出到概要的備份

表中恢復(fù)誤操作的數(shù)據(jù)。導(dǎo)入操作可把一個操作系統(tǒng)中的Oracle數(shù)據(jù)庫導(dǎo)出后再導(dǎo)入到另一個操作系統(tǒng)中。導(dǎo)入操作可以交互進行,也可通過命令進行。導(dǎo)入操作選項同導(dǎo)出的基本一樣。表9.2給出導(dǎo)入操作的參數(shù),其他參數(shù)請參照導(dǎo)出參數(shù)。導(dǎo)入操作中參數(shù)相互沖突或者可能引起指令不一致時操作就會失敗。例如,設(shè)置“FULL=Y”和導(dǎo)

入【例9.6】以交互模式進行XSCJ數(shù)據(jù)庫中XSB表的導(dǎo)入。為了查看導(dǎo)入的效果,首先將XSB表刪除:DROP

TABLE

XSB;導(dǎo)入的過程和結(jié)果如圖9.5所示。導(dǎo)

入下面簡單介紹命令行模式和參數(shù)模式的EXP與IMP用法。(1)命令行模式。命令行模式其實與交互式是一樣的道理,只是命令行模式將交互式中逐步輸入的數(shù)據(jù)在一行命令中全部輸入。例如,要導(dǎo)出XSB表,可以在命令提示符下輸入如下命令:EXP

USERID=SCOTT/Mm123456

FULL=N

BUFFER=10000

FILE=XSB.DMP

TABLES=XSB結(jié)果如圖9.6所示。導(dǎo)

入(2)參數(shù)模式。參數(shù)模式其實就是將命令行中命令后面所帶的參數(shù)寫在一個參數(shù)文件中,然后再使用命令,使后面帶一個調(diào)用該文件的參數(shù)??梢酝ㄟ^普通的文本文件編輯器來創(chuàng)建這個文件。為了便于標識,將該參數(shù)文件命名為.parfile的后綴。以下是一個參數(shù)文件的內(nèi)容。USERID=SCOTT/Mm123456FULL=NBUFFER=10

000FILE=XSB.DMPTABLES=XSB使用參數(shù)模式執(zhí)行過程如下:EXP

PARFILE=XSB.PARFILEOracle11g(第5版第9章 表空間、備份和恢復(fù)脫機備份脫機備份在磁盤空間容許的情況下,將這些文件復(fù)制到磁盤上。冷備份一般在SQL*Plus中進行。在進行備份前,應(yīng)該確定備份哪些文件,通過查詢V$DATAFILE視圖可以獲取數(shù)據(jù)文件的列表;通過查詢V$LOGFILE視圖可以獲取聯(lián)機重做日志文件的列表;通過以下語句可查詢控制文件的列表:SHOW

PARAMENTER

CONTROL_FILES;【例9.7】把XSCJ數(shù)據(jù)庫的所有數(shù)據(jù)文件、重做日志文件和控制文件都備份。正常關(guān)閉要備份的實例,在“命令提示符”窗口中輸入如下命令:sqlplus/nologconnect

scott/Mm123456

as

sysdbashutdown

normal備份數(shù)據(jù)庫。使用操作系統(tǒng)的備份工具,備份所有的數(shù)據(jù)文件、重做日志文件、控制文件和參數(shù)文件。啟動數(shù)據(jù)庫。startup

mountOracle11g(第5版第9章 表空間、備份和恢復(fù)聯(lián)機備份以ARCHIVELOG方式運行數(shù)據(jù)庫01以ARCHIVELOG方式運行數(shù)據(jù)庫進行聯(lián)機備份可以使用PL/SQL語句也可以使用備份向?qū)?,但都要求?shù)據(jù)庫在ARCHIVELOG方式下運行。下面說明如何進入ARCHIVELOG方式。進入“命令提示符”窗口。SQLPLUS/NOLOG以SYSDBA身份和數(shù)據(jù)庫相連。

CONNECT

SCOTT/Mm123456

AS

SYSDBA使數(shù)據(jù)庫在ARCHIVELOG方式下運行。

SHUTDOWN

IMMEDIATESTARTUP

MOUNTALTER

DATABASE

ARCHIVELOG;ARCHIVE

LOG

START;ALTER

DATABASE

OPEN;以ARCHIVELOG方式運行數(shù)據(jù)庫下面的命令將從Server

Manager中顯示當(dāng)前數(shù)據(jù)庫的ARCHIVELOG狀態(tài)。ARCHIVE

LOG

LIST整個過程的SQL*Plus窗口如圖9.7所示。執(zhí)行數(shù)據(jù)庫聯(lián)機備份02執(zhí)行數(shù)據(jù)庫聯(lián)機備份逐個表空間備份數(shù)據(jù)文件首先要使用ALTER

TABLESPACE

BEGIN

BACKUP語句將表空間設(shè)置為備份狀態(tài),例如,標記表空間SYSTEM備份開始的語句如下:ALTER

TABLESPACE

SYSTEM

BEGIN

BACKUP;接著在“命令提示符”窗口中使用操作系統(tǒng)提供的命令備份表空間中的數(shù)據(jù)文件,例如:COPY

E:\app\Administrator\oradata\XSCJ\SYSTEM01.DBF

D:\BACKUP所有的數(shù)據(jù)文件備份完后,要使用ALTER

TABLESPACE

END

BACKUP指出聯(lián)機備份的結(jié)束,將表空間恢復(fù)到正常狀態(tài),例如:ALTER

TABLESPACE

SYSTEM

END

BACKUP;備份歸檔重做日志文件首先停止當(dāng)前數(shù)據(jù)庫的ARCHIVELOG狀態(tài):ARCHIVE

LOG

START;然后記錄歸檔重做日志目標目錄中的文件,并且備份歸檔重做日志文件。最后使用ALTER

DATABASE

BACKUPCONTROLFILE命令備份控制文件:ALTER

DATABASE

BACKUP

CONTROLFILE

TO

"D:\BACKUP\file.bak";Oracle11g(第5版第9章 表空間、備份和恢復(fù)數(shù)

據(jù)

泵概

述01概

述數(shù)據(jù)泵(DataPump)是Oracl

溫馨提示

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

評論

0/150

提交評論