計(jì)算機(jī)必學(xué)oracle數(shù)據(jù)庫(kù)第05章課件_第1頁(yè)
計(jì)算機(jī)必學(xué)oracle數(shù)據(jù)庫(kù)第05章課件_第2頁(yè)
計(jì)算機(jī)必學(xué)oracle數(shù)據(jù)庫(kù)第05章課件_第3頁(yè)
計(jì)算機(jī)必學(xué)oracle數(shù)據(jù)庫(kù)第05章課件_第4頁(yè)
計(jì)算機(jī)必學(xué)oracle數(shù)據(jù)庫(kù)第05章課件_第5頁(yè)
已閱讀5頁(yè),還剩111頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Oracle10g數(shù)據(jù)庫(kù)應(yīng)用教程

授課教師:職務(wù):Oracle10g數(shù)據(jù)庫(kù)應(yīng)用教程授課教師:第5章數(shù)據(jù)庫(kù)存儲(chǔ)管理課程描述介紹Oracle數(shù)據(jù)庫(kù)的存儲(chǔ)單元和物理文件管理。Oracle數(shù)據(jù)庫(kù)的存儲(chǔ)單元包括表空間、段、區(qū)間和數(shù)據(jù)塊等。Oracle10g的一個(gè)新增特性——自動(dòng)存儲(chǔ)管理(ASM)。

第5章數(shù)據(jù)庫(kù)存儲(chǔ)管理課程描述本章知識(shí)點(diǎn)表空間管理控制文件管理重做日志管理歸檔日志管理本章知識(shí)點(diǎn)表空間管理5.1表空間管理查看表空間信息創(chuàng)建表空間設(shè)置和修改表空間屬性刪除表空間段和數(shù)據(jù)塊管理撤銷表空間5.1表空間管理查看表空間信息查看表空間信息與表空間相關(guān)的視圖段類型說明V$TABLESPACE控制文件中保存的所有表空間的名稱和數(shù)量DBA_TABLESPACES所有表空間的描述信息USER_TABLESPACES所有用戶可訪問表空間的描述信息DBA_TABLESPACE_GROUPS所有表空間組及其所屬的表空間信息DBA_SEGMENTS所有表空間中的區(qū)間信息USER_SEGMENTS所有用戶表空間中的區(qū)間信息DBA_FREE_SPACE所有表空間中的空閑區(qū)間信息USER_FREE_SPACE所有用戶表空間中的空閑區(qū)間信息V$DATAFILE所有數(shù)據(jù)文件信息V$TEMPFILE所有臨時(shí)文件信息DBA_DATA_FILES顯示所有屬于表空間的數(shù)據(jù)文件信息DBA_TEMP_FILES顯示所有屬于臨時(shí)表空間的臨時(shí)文件信息查看表空間信息與表空間相關(guān)的視圖段類型說明查看表空間信息【例】查看視圖V$TABLESPACE中表空間的內(nèi)容和數(shù)量,代碼及執(zhí)行結(jié)果如下:SQL>SELECT*FROMV$TABLESPACE;TS#NAME INC BIG FLA ENC---- ------------ --- --- --- ---0 SYSTEM YES NO YES1 UNDOTBS1 YES NO YES2 SYSAUX YES NO YES4 USERS YES NO YES3 TEMP NO NO YES6 EXAMPLE YES NO YES7 ORCLTBS01 YES NO YES8 ORCLTBS02 YES NO YES已選擇8行。查看表空間信息【例】查看視圖V$TABLESPACE中表空間查看表空間信息【例】通過視圖DBA_TABLESPACES查看所有表空間的信息,代碼及執(zhí)行結(jié)果如下:SQL>SELECTTABLESPACE_NAME,CONTENTS,STATUSFROMDBA_TABLESPACES;TABLESPACE_NAME CONTENTS STATUS--------------- ---- -----SYSTEM PERMANENT ONLINEUNDOTBS1 UNDO ONLINESYSAUX PERMANENT ONLINETEMP TEMPORARY ONLINEUSERS PERMANENT ONLINEEXAMPLE PERMANENT ONLINEORCLTBS01 PERMANENT ONLINEORCLTBS02 PERMANENT ONLINE已選擇8行。查看表空間信息【例】通過視圖DBA_TABLESPACES查查看表空間信息“表空間管理”頁(yè)面操作按鈕查看表空間信息“表空間管理”頁(yè)面操作按鈕創(chuàng)建表空間1.本地管理表空間【例】在CREATETABLESPACE語句中使用EXTENTMANAGEMENTLOCAL子句,可以創(chuàng)建一個(gè)本地管理表空間,代碼如下:SQL>CREATETABLESPACEOrclTBS01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE50MEXTENTMANAGEMENTLOCALAUTOALLOCATE;

表空間已創(chuàng)建。創(chuàng)建表空間1.本地管理表空間創(chuàng)建表空間【例】在創(chuàng)建表空間OrclTBS02時(shí),指定其最小區(qū)間為128KB,代碼如下:SQL>CREATETABLESPACEOrclTBS02DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS02.dbf'SIZE30MEXTENTMANAGEMENTLOCALUNIFORMSIZE128K;表空間已創(chuàng)建。創(chuàng)建表空間【例】在創(chuàng)建表空間OrclTBS02時(shí),指定其最創(chuàng)建表空間2.大文件表空間【例】在CREATETABLESPACE語句中使用BIGFILE關(guān)鍵詞可以創(chuàng)建大文件表空間,代碼如下:SQL>CREATEBIGFILETABLESPACEbigtbsDATAFILE'C:\oracle\product\10.2.0\oradata\orcl\bigtbs.dbf'SIZE10G;表空間已創(chuàng)建。創(chuàng)建表空間2.大文件表空間創(chuàng)建表空間3.臨時(shí)表空間【例】創(chuàng)建臨時(shí)表空間tmptbs,代碼如下:SQL>CREATETEMPORARYTABLESPACEtmptbsTEMPFILE'C:\oracle\product\10.2.0\oradata\orcl\tmptbs.dbf'SIZE20MREUSEEXTENTMANAGEMENTLOCALUNIFORMSIZE16M;表空間已創(chuàng)建。創(chuàng)建表空間3.臨時(shí)表空間創(chuàng)建表空間創(chuàng)建表空間頁(yè)面

單擊此按鈕保存輸入名稱創(chuàng)建大文件表空間創(chuàng)建表空間創(chuàng)建表空間頁(yè)面單擊此按鈕保存輸入名稱創(chuàng)建大文件表設(shè)置和修改表空間屬性1.重命名表空間【例】將表空間OrclTBS02修改為OrclTBS03,可以使用下面的語句:SQL>ALTERTABLESPACEOrclTBS02RENAMETOOrclTBS03;表空間已更改。

設(shè)置和修改表空間屬性1.重命名表空間設(shè)置和修改表空間屬性2.本地管理表空間

【例】在ALTERTABLESPACE語句中使用ADDDATAFILE子句,可以在本地管理表空間中增加數(shù)據(jù)文件,代碼如下:SQL>ALTERTABLESPACEOrclTBS01ADDDATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS011.dbf'SIZE10M;表空間已更改。

設(shè)置和修改表空間屬性2.本地管理表空間設(shè)置和修改表空間屬性3.大文件表空間【例】修改大文件表空間bigtbs的數(shù)據(jù)文件大小為4GB,代碼如下:SQL>ALTERTABLESPACEbigtbsRESIZE4G;表空間已更改。設(shè)置和修改表空間屬性3.大文件表空間設(shè)置和修改表空間屬性4.臨時(shí)表空間【例】在臨時(shí)表空間tmptbs中添加臨時(shí)文件,tmptbs01.dbf,文件大小為20MB,代碼如下:SQL>ALTERTABLESPACEtmptbsADDTEMPFILE'F:\oracle\product\10.2.0\oradata\orcl\tmptbs01.dbf'SIZE20M;表空間已更改。設(shè)置和修改表空間屬性4.臨時(shí)表空間設(shè)置和修改表空間屬性5.設(shè)置聯(lián)機(jī)和脫機(jī)將數(shù)據(jù)庫(kù)的一部分設(shè)置為不可訪問,而其他部分可以訪問。執(zhí)行脫機(jī)表空間備份。在升級(jí)或維護(hù)應(yīng)用程序時(shí),將應(yīng)用程序及其使用的表臨時(shí)設(shè)置為不可訪問。重命名或重新分配表空間。設(shè)置和修改表空間屬性5.設(shè)置聯(lián)機(jī)和脫機(jī)設(shè)置和修改表空間屬性ALTERTABLESPACE…OFFLINE語句設(shè)置表空間為脫機(jī)狀態(tài)

【例】將表空間OrclTBS01設(shè)置為脫機(jī)狀態(tài):SQL>ALTERTABLESPACEOrclTBS01OFFLINE;DBA_TABLESPACES視圖查看表空間的狀態(tài)SQL>SELECTTABLESPACE_NAME,CONTENTS,STATUSFROMDBA_TABLESPACES;ALTERTABLESPACE…ONLINE語句設(shè)置表空間為聯(lián)機(jī)狀態(tài)?!纠繉⒈砜臻gOrclTBS01設(shè)置為聯(lián)機(jī)狀態(tài):SQL>ALTERTABLESPACEOrclTBS01ONLINE;設(shè)置和修改表空間屬性ALTERTABLESPACE…OFF設(shè)置和修改表空間屬性

6.設(shè)置只讀表空間ALTERTABLESPACE…READONLY語句設(shè)置只讀表空間【例】將表空間OrclTBS01設(shè)置為只讀表空間:SQL>ALTERTABLESPACEOrclTBS01READONLY;ALTERTABLESPACE…READWRITE語句可以將只讀表空間設(shè)置為可讀寫狀態(tài)。【例】將表空間OrclTBS01設(shè)置為可讀寫狀態(tài):SQL>ALTERTABLESPACEOrclTBS01READWRITE;設(shè)置和修改表空間屬性6.設(shè)置只讀表空間設(shè)置和修改表空間屬性編輯表空間頁(yè)面單擊此按鈕保存添加、編輯和移去數(shù)據(jù)文件設(shè)置和修改表空間屬性編輯表空間頁(yè)面單擊此按鈕保存添加、編輯刪除表空間DROPTABLESPACE語句刪除表空間?!纠縿h除表空間OrclTBS01:SQL>DROPTABLESPACEOrclTBS01;表空間已刪除。INCLUDINGCONTENTS子句可以在刪除表空間的同時(shí)刪除其中的段,例如:SQL>DROPTABLESPACEOrclTBS01INCLUDINGCONTENTS;INCLUDINGCONTENTSANDDATAFILE子句可以在刪除表空間的同時(shí),刪除包含的段和數(shù)據(jù)文件:SQL>DROPTABLESPACEOrclTBS03INCLUDINGCONTENTSANDDATAFILES;刪除表空間DROPTABLESPACE語句刪除表空間。段和數(shù)據(jù)塊管理SEGMENTSPACEMANAGEMENT子句可定義段空間管理方式【例】創(chuàng)建自動(dòng)段管理方式的表空間MyTBS01:SQL>CREATETABLESPACEOrclTBS01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE30MEXTENTMANAGEMENTLOCALAUTOALLOCATESEGMENTSPACEMANAGEMENTAUTO;【例】創(chuàng)建手動(dòng)段管理方式的表空間MyTBS01:SQL>CREATETABLESPACEOrclTBS01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE30MEXTENTMANAGEMENTLOCALAUTOALLOCATESEGMENTSPACEMANAGEMENTMANUAL;

段和數(shù)據(jù)塊管理SEGMENTSPACEMANAGEME段和數(shù)據(jù)塊管理數(shù)據(jù)塊是Oracle數(shù)據(jù)庫(kù)的最小存儲(chǔ)單元,在初始化參數(shù)DB_BLOCK_SIZE中定義了標(biāo)準(zhǔn)數(shù)據(jù)塊的大小。在創(chuàng)建表空間時(shí),如果不特殊指定,將使用DB_BLOCK_SIZE中定義的數(shù)據(jù)作為數(shù)據(jù)塊的大小。【例】可以在CREATETABLESPACE語句中使用BLOCKSIZE子句指定非標(biāo)準(zhǔn)數(shù)據(jù)塊的大?。篠QL>CREATETABLESPACEOrclTBS01DATAFILE'F:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE30MEXTENTMANAGEMENTLOCALAUTOALLOCATEBLOCKSIZE8K;新創(chuàng)建的表空間數(shù)據(jù)塊大小為8K。段和數(shù)據(jù)塊管理數(shù)據(jù)塊是Oracle數(shù)據(jù)庫(kù)的最小存儲(chǔ)單元,在撤銷表空間撤銷記錄可以用于完成如下功能:當(dāng)執(zhí)行ROLLBACK命令時(shí),完成回滾操作?;謴?fù)數(shù)據(jù)庫(kù)。使用閃回查詢分析以前時(shí)間點(diǎn)的數(shù)據(jù)。使用閃回技術(shù)從邏輯破壞中恢復(fù)數(shù)據(jù)。初始化參數(shù)UNDO_TABLESPACE設(shè)置默認(rèn)的撤銷表空間?!纠渴褂肅REATEUNDOTABLESPACE語句創(chuàng)建撤銷表空間:SQL>CREATEUNDOTABLESPACEundotbs01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\undotbs02.dbf'SIZE2MREUSE;表空間已創(chuàng)建。撤銷表空間撤銷記錄可以用于完成如下功能:5.2控制文件管理創(chuàng)建控制文件恢復(fù)控制文件刪除控制文件查看控制文件信息5.2控制文件管理創(chuàng)建控制文件創(chuàng)建控制文件創(chuàng)建初始控制文件創(chuàng)建控制文件創(chuàng)建初始控制文件創(chuàng)建控制文件

創(chuàng)建控制文件副本(1)關(guān)閉數(shù)據(jù)庫(kù)。(2)將當(dāng)前的控制文件復(fù)制到其他目錄下。(3)修改初始化參數(shù)CONTROL_FILES,增加新的控制文件或者修改原有的控制文件。(4)重新啟動(dòng)數(shù)據(jù)庫(kù)。創(chuàng)建控制文件創(chuàng)建控制文件副本創(chuàng)建控制文件創(chuàng)建新的控制文件數(shù)據(jù)庫(kù)的控制文件被永久破壞,而且沒有對(duì)控制文件進(jìn)行備份。需要修改數(shù)據(jù)庫(kù)名?!纠渴褂肅REATECONTROLFILE語句創(chuàng)建控件:CREATECONTROLFILESETDATABASEdb_nameLOGFILEGROUP1('c:\oracle\product\10.2.0\oradata\db_name\redo01_01.log','c:\oracle\product\10.2.0\oradata\db_name\redo01_02.log'),……RESETLOGSDATAFILE'c:\oracle\product\10.2.0\oradata\db_name\system01.dbf'SIZE3M,'c:\oracle\product\10.2.0\oradata\db_name\rbs01.dbs'SIZE5M,'c:\oracle\product\10.2.0\oradata\db_name\users01.dbs'SIZE5M,'c:\oracle\product\10.2.0\oradata\db_name\temp01.dbs'SIZE5MMAXLOGFILES50MAXLOGMEMBERS3MAXLOGHISTORY400MAXDATAFILES200MAXINSTANCES6ARCHIVELOG;創(chuàng)建控制文件創(chuàng)建新的控制文件創(chuàng)建控制文件創(chuàng)建新的控制文件(1)獲取數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和重做日志文件列表。【例】從視圖V$DATAFILE中獲取數(shù)據(jù)文件的信息:SQL>SELECTNAMEFROMV$DATAFILE;NAME---------------------------------------------F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF【例】從視圖V$LOGFILE中獲取日志文件的信息:SQL>SELECTMEMBERFROMV$LOGFILE;MEMBER---------------------------------------------F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOGF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOGF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG

創(chuàng)建控制文件創(chuàng)建新的控制文件創(chuàng)建控制文件(2)關(guān)閉數(shù)據(jù)庫(kù)。(3)備份所有的數(shù)據(jù)文件和重做日志文件。(4)使用STARTUPNOMOUNT啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。(5)使用CREATECONTROLFILE語句創(chuàng)建控制文件。如果需要重命名數(shù)據(jù)庫(kù),則使用RESETLOGS子句,否則使用NORESETLOGS子句。(6)將新的控制文件備份到其他不在線的存儲(chǔ)介質(zhì)中,如U盤、移動(dòng)硬盤或磁帶等。(7)根據(jù)實(shí)際情況修改CONTROL_FILE參數(shù);如果修改了數(shù)據(jù)庫(kù)名稱,則還需要修改DB_NAME參數(shù)。(8)如果需要的話,則恢復(fù)數(shù)據(jù)庫(kù)。(9)如果在第8步中進(jìn)行了恢復(fù)數(shù)據(jù)庫(kù)的操作,則需要執(zhí)行ALTERDATABASEOPEN語句打開數(shù)據(jù)庫(kù)。如果在創(chuàng)建控制文件時(shí)使用了RESETLOGS子句,則需要使用ALTERDATABASEOPENRESETLOGS語句。創(chuàng)建控制文件(2)關(guān)閉數(shù)據(jù)庫(kù)?;謴?fù)控制文件如果控制文件被破壞,但存儲(chǔ)控制文件的目錄仍然是可訪問:關(guān)閉數(shù)據(jù)庫(kù)實(shí)例;使用操作系統(tǒng)命令將控制文件副本復(fù)制到控制文件目錄下;使用STARTUP命令打開數(shù)據(jù)庫(kù)實(shí)例。如果存儲(chǔ)介質(zhì)被破壞,導(dǎo)致存儲(chǔ)控制文件的目錄無法訪問:關(guān)閉數(shù)據(jù)庫(kù)實(shí)例;使用操作系統(tǒng)命令將控制文件副本復(fù)制到一個(gè)新的可以訪問的目錄下;修改CONTROL_FILES參數(shù),將無效的控制文件目錄修改為新的目錄;使用STARTUP命令打開數(shù)據(jù)庫(kù)實(shí)例?;謴?fù)控制文件如果控制文件被破壞,但存儲(chǔ)控制文件的目錄仍然是刪除控制文件(1)關(guān)閉數(shù)據(jù)庫(kù)。(2)編輯CONTROL_FILES參數(shù)的值,刪除指定的控制文件信息。(3)重新啟動(dòng)數(shù)據(jù)庫(kù)。刪除控制文件(1)關(guān)閉數(shù)據(jù)庫(kù)。查看控制文件信息與控制文件相關(guān)的視圖視圖名說明V$DATABASE顯示控制文件中描述的數(shù)據(jù)庫(kù)信息V$CONTROLFILE顯示控制文件的名稱列表V$CONTROLFILE_RECORD_SECTION顯示控制文件的記錄信息V$PARAMETER顯示初始化參數(shù)CONTROL_FILES中定義的控制文件名稱查看控制文件信息與控制文件相關(guān)的視圖視圖名說查看控制文件信息【例】從視圖V$DATABASE中查詢數(shù)據(jù)庫(kù)編號(hào)、數(shù)據(jù)庫(kù)名稱和日志模式等信息:SQL>SELECTDBID,NAME,LOG_MODEFROMV$DATABASE;DBID NAME LOG_MODE------ ----- ----------1140083184 ORCL NOARCHIVELOG【例】從視圖V$CONTROLFILE_RECORD_SECTION中查詢到控制文件的記錄類型、記錄大小、記錄總數(shù)量、使用記錄數(shù)量等信息:SQL>SELECTTYPE,RECORD_SIZE,RECORDS_TOTAL,RECORDS_USEDFROMV$CONTROLFILE_RECORD_SECTION;TYPE RECORD_SIZERECORDS_TOTAL RECORDS_USED-------------- ------ ------ ------DATABASE 316 1 1CKPTPROGRESS8180 11 0REDOTHREAD256 8 1REDOLOG 72 16 3DATAFILE 428 100 5查看控制文件信息【例】從視圖V$DATABASE中查詢數(shù)據(jù)庫(kù)5.3重做日志管理重做日志的基本概念查看重做日志信息創(chuàng)建重做日志組和成員重命名重做日志成員刪除重做日志組和成員清空重做日志文件

5.3重做日志管理重做日志的基本概念重做日志的基本概念LGWR寫入重做日志的過程重做日志的基本概念LGWR寫入重做日志的過程重做日志的基本概念重做日志的多元性重做日志的基本概念重做日志的多元性重做日志的基本概念LGWR對(duì)重做日志文件無效的響應(yīng)情況LGWR的動(dòng)作LGWR可以寫入組中的至少一個(gè)成員文件正常完成寫操作。LGWR寫入組中可訪問的成員文件,忽略不可訪問的成員文件在日志切換時(shí),LGWR無法訪問下一個(gè)組,因?yàn)樵摻M需要被歸檔臨時(shí)停止數(shù)據(jù)庫(kù)操作,等待該組可以被訪問或該組已經(jīng)被歸檔在日志切換時(shí),由于介質(zhì)被破壞,下一組的所有成員都無法被訪問Oracle數(shù)據(jù)庫(kù)返回錯(cuò)誤,數(shù)據(jù)庫(kù)實(shí)例被關(guān)閉。此時(shí),需要從有效的重做日志文件中執(zhí)行介質(zhì)恢復(fù)操作。數(shù)據(jù)庫(kù)恢復(fù)操作請(qǐng)參照第8章理解。如果數(shù)據(jù)庫(kù)的檢查點(diǎn)已經(jīng)超出了丟失的重做日志,則不需要進(jìn)行介質(zhì)恢復(fù)了,因?yàn)橹刈鋈罩局杏涗浀臄?shù)據(jù)寫入到數(shù)據(jù)文件中。現(xiàn)在只需要?jiǎng)h除無效的重做日志組。如果數(shù)據(jù)庫(kù)還沒有對(duì)失效的日志進(jìn)行歸檔操作,則執(zhí)行ALTERDATABASECLEARUNARCHIVEDLOG禁止歸檔操作,這樣就可以刪除日志文件了當(dāng)LGWR寫入時(shí),所有組中的成員文件都突然無法訪問Oracle數(shù)據(jù)庫(kù)返回錯(cuò)誤,數(shù)據(jù)庫(kù)實(shí)例被關(guān)閉。此時(shí),需要從有效的重做日志文件中執(zhí)行介質(zhì)恢復(fù)操作。如果介質(zhì)沒有被破壞,只是不小心掉線了,則不需要執(zhí)行介質(zhì)恢復(fù),只要將介質(zhì)恢復(fù)在線,然后讓數(shù)據(jù)庫(kù)執(zhí)行自動(dòng)實(shí)例恢復(fù)即可重做日志的基本概念LGWR對(duì)重做日志文件無效的響應(yīng)情查看重做日志信息重做日志組管理頁(yè)面單擊此按鈕創(chuàng)建重做日志組查看重做日志信息重做日志組管理頁(yè)面單擊此按鈕創(chuàng)建重做日志查看重做日志信息查看重做日志組頁(yè)面查看重做日志信息查看重做日志組頁(yè)面查看重做日志信息【例】查詢視圖V$LOG,顯示控制文件中重做日志文件的信息:SQL>SELECTGROUP#,ARCHIVED,STATUSFROMV$LOG;GROUP#ARCSTATUS---------------1NOINACTIVE2NOCURRENT3NOINACTIVE4NOINACTIVE10NOINACTIVE【例】查詢視圖V$LOGFILE,顯示重做日志組及其成員的基本信息:SQL>SELECTGROUP#,STATUS,MEMBERFROMV$LOGFILE;GROUP#STATUSMEMBER----- ------- ----------------------------------------------3 STALE F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG2 F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG1 F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG4 STALE F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\LOG1C.RDO4 STALE F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\LOG2C.RDO2 F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\LOG3A.ODO已選擇6行。查看重做日志信息【例】查詢視圖V$LOG,顯示控制文件中重做創(chuàng)建重做日志組和成員創(chuàng)建重做日志組單擊此按

鈕保存添加、編輯和移去重做日志成員編輯組號(hào)和文件大小創(chuàng)建重做日志組和成員創(chuàng)建重做日志組單擊此按

鈕保存添加、創(chuàng)建重做日志組和成員ALTERDATABASE語句創(chuàng)建重做日志組【例】在ALTERDATABASE語句中使用ADDLOGFILE子句也可以創(chuàng)建重做日志組:ALTERDATABASEADDLOGFILE('log1c.rdo','log2c.rdo')SIZE5000k;【例】在使用ALTERDATABASE語句創(chuàng)建重做日志組時(shí),可以使用GROUP子句定義組編號(hào):ALTERDATABASEADDLOGFILEGROUP10('log1a.rdo','log2a.rdo')SIZE5000k;創(chuàng)建重做日志組和成員ALTERDATABASE語句創(chuàng)建重創(chuàng)建重做日志組和成員創(chuàng)建重做日志成員

【例】在ALTERDATABASE語句中使用ADDLOGFILEMEMBER關(guān)鍵字,可以向已存在的重做日志組中添加成員:ALTERDATABASEADDLOGFILEMEMBER'log3a.odo'TOGROUP10;創(chuàng)建重做日志組和成員創(chuàng)建重做日志成員重命名重做日志成員用戶必須擁有如下權(quán)限:ALTERDATABASE系統(tǒng)權(quán)限。復(fù)制文件到指定位置的操作系統(tǒng)權(quán)限。打開和備份數(shù)據(jù)庫(kù)的權(quán)限。(1)使用SHUTDOWN命令關(guān)閉數(shù)據(jù)庫(kù)。(2)將重做日志文件復(fù)制到新的位置。(3)使用STARTUPMOUNT命令裝載數(shù)據(jù)庫(kù)。(4)使用帶RENAMEFILE子句的ALTERDATABASE語句重命名數(shù)據(jù)庫(kù)的重做日志文件,例如:ALTERDATABASERENAMEFILE'/diska/logs/log1a.rdo','/diska/logs/log2a.rdo'TO'/diskc/logs/log1c.rdo','/diskc/logs/log2c.rdo';(5)使用ALTERDATABASEOPEN命令打開數(shù)據(jù)庫(kù)。重命名重做日志成員用戶必須擁有如下權(quán)限:刪除重做日志組和成員(1)刪除重做日志組DROPLOGFILE子句也可以刪除指定的重做日志組?!纠縿h除編號(hào)為10的重做日志組:SQL>ALTERDATABASEDROPLOGFILEGROUP10;數(shù)據(jù)庫(kù)已更改。刪除重做日志組和成員(1)刪除重做日志組刪除重做日志組和成員(2)刪除重做日志成員DROPLOGFILEMEMBER子句也可以刪除指定的重做日志組?!纠縿h除重做日志組log1a.rdo:SQL>ALTERDATABASEDROPLOGFILEMEMBER'log1a.rdo';數(shù)據(jù)庫(kù)已更改。刪除重做日志組和成員(2)刪除重做日志成員清空重做日志文件ALTERDATABASECLEARLOGFILE命令初始化此日志文件。執(zhí)行此命令時(shí),不需要關(guān)閉數(shù)據(jù)庫(kù)。【例】清空編號(hào)為10的重做日志組:ALTERDATABASECLEARLOGFILEGROUP10;如果重做日志文件沒有歸檔,則可以在語句中使用UNARCHIVED關(guān)鍵字:ALTERDATABASECLEARUNARCHIVEDLOGFILEGROUP10;清空重做日志文件ALTERDATABASECLEAR5.4歸檔日志管理歸檔日志文件和歸檔模式管理歸檔模式指定歸檔目的地查看歸檔日志信息5.4歸檔日志管理歸檔日志文件和歸檔模式歸檔日志文件和歸檔模式自動(dòng)歸檔日志的過程歸檔日志文件和歸檔模式自動(dòng)歸檔日志的過程管理歸檔模式1.設(shè)置數(shù)據(jù)庫(kù)的初始?xì)w檔模式。2.改變數(shù)據(jù)庫(kù)的歸檔模式。3.執(zhí)行手動(dòng)歸檔。4.調(diào)整歸檔進(jìn)程的數(shù)量。

管理歸檔模式1.設(shè)置數(shù)據(jù)庫(kù)的初始?xì)w檔模式。指定歸檔目的地(1)使用SHUTDOWN命令關(guān)閉數(shù)據(jù)庫(kù)。(2)設(shè)置初始化參數(shù)LOG_ARCHIVE_DEST_n,使用LOCATION關(guān)鍵詞設(shè)置位置信息,如果要將歸檔目的地指定到備用數(shù)據(jù)庫(kù),則可以使用SERVICE設(shè)置有效的網(wǎng)絡(luò)服務(wù)名。(3)可以編輯初始化參數(shù)LOG_ARCHIVE_FORMAT,設(shè)置歸檔文件的初始化模式。指定歸檔目的地(1)使用SHUTDOWN命令關(guān)閉數(shù)據(jù)庫(kù)。查看歸檔日志信息歸檔日志管理頁(yè)面查詢歸檔日志查看歸檔日志信息歸檔日志管理頁(yè)面查詢歸檔日志查看歸檔日志信息查看歸檔日志頁(yè)面查看歸檔日志信息查看歸檔日志頁(yè)面查看歸檔日志信息與歸檔日志相關(guān)的視圖

段類型說明V$DATABASE顯示數(shù)據(jù)庫(kù)處于歸檔日志模式(ARCHIVELOG)還是非歸檔日志模式(NOARCHIVELOG)V$ARCHIVED_LOG顯示控制文件中的歷史歸檔日志信息V$ARCHIVE_DEST描述當(dāng)前實(shí)例的所有歸檔目的地,包括目的地的當(dāng)前值、模式和狀態(tài)V$ARCHIVE_PROCESSES顯示一個(gè)數(shù)據(jù)庫(kù)實(shí)例的不同歸檔進(jìn)程的狀態(tài)信息V$BACKUP_REDOLOG顯示備份和歸檔日志信息V$LOG顯示所有重做日志組,表明哪些重做日志組需要被歸檔V$LOG_HISTORY顯示日志的歷史信息查看歸檔日志信息與歸檔日志相關(guān)的視圖段類型說查看歸檔日志信息【例】使用SQL語句查看到歸檔日志進(jìn)程的信息:SQL>SELECT*FROMV$ARCHIVE_PROCESSES;PROCESS STATUS LOG_SEQUENCE STAT------- ------ ------ ---0 ACTIVE 0 IDLE1 ACTIVE 0 IDLE2 STOPPED 0 IDLE3 STOPPED 0 IDLE……29 STOPPED 0 IDLE已選擇30行。查看歸檔日志信息【例】使用SQL語句查看到歸檔日志進(jìn)程的信息查看歸檔日志信息【例】使用ARCHIVELOGLIST命令可以顯示歸檔日志信息:SQL>ARCHIVELOGLIST;數(shù)據(jù)庫(kù)日志模式存檔模式自動(dòng)存檔啟用存檔終點(diǎn)USE_DB_RECOVERY_FILE_DEST最早的聯(lián)機(jī)日志序列22下一個(gè)存檔日志序列22當(dāng)前日志序列25查看歸檔日志信息【例】使用ARCHIVELOGLIST命Oracle10g數(shù)據(jù)庫(kù)應(yīng)用教程

授課教師:職務(wù):Oracle10g數(shù)據(jù)庫(kù)應(yīng)用教程授課教師:第5章數(shù)據(jù)庫(kù)存儲(chǔ)管理課程描述介紹Oracle數(shù)據(jù)庫(kù)的存儲(chǔ)單元和物理文件管理。Oracle數(shù)據(jù)庫(kù)的存儲(chǔ)單元包括表空間、段、區(qū)間和數(shù)據(jù)塊等。Oracle10g的一個(gè)新增特性——自動(dòng)存儲(chǔ)管理(ASM)。

第5章數(shù)據(jù)庫(kù)存儲(chǔ)管理課程描述本章知識(shí)點(diǎn)表空間管理控制文件管理重做日志管理歸檔日志管理本章知識(shí)點(diǎn)表空間管理5.1表空間管理查看表空間信息創(chuàng)建表空間設(shè)置和修改表空間屬性刪除表空間段和數(shù)據(jù)塊管理撤銷表空間5.1表空間管理查看表空間信息查看表空間信息與表空間相關(guān)的視圖段類型說明V$TABLESPACE控制文件中保存的所有表空間的名稱和數(shù)量DBA_TABLESPACES所有表空間的描述信息USER_TABLESPACES所有用戶可訪問表空間的描述信息DBA_TABLESPACE_GROUPS所有表空間組及其所屬的表空間信息DBA_SEGMENTS所有表空間中的區(qū)間信息USER_SEGMENTS所有用戶表空間中的區(qū)間信息DBA_FREE_SPACE所有表空間中的空閑區(qū)間信息USER_FREE_SPACE所有用戶表空間中的空閑區(qū)間信息V$DATAFILE所有數(shù)據(jù)文件信息V$TEMPFILE所有臨時(shí)文件信息DBA_DATA_FILES顯示所有屬于表空間的數(shù)據(jù)文件信息DBA_TEMP_FILES顯示所有屬于臨時(shí)表空間的臨時(shí)文件信息查看表空間信息與表空間相關(guān)的視圖段類型說明查看表空間信息【例】查看視圖V$TABLESPACE中表空間的內(nèi)容和數(shù)量,代碼及執(zhí)行結(jié)果如下:SQL>SELECT*FROMV$TABLESPACE;TS#NAME INC BIG FLA ENC---- ------------ --- --- --- ---0 SYSTEM YES NO YES1 UNDOTBS1 YES NO YES2 SYSAUX YES NO YES4 USERS YES NO YES3 TEMP NO NO YES6 EXAMPLE YES NO YES7 ORCLTBS01 YES NO YES8 ORCLTBS02 YES NO YES已選擇8行。查看表空間信息【例】查看視圖V$TABLESPACE中表空間查看表空間信息【例】通過視圖DBA_TABLESPACES查看所有表空間的信息,代碼及執(zhí)行結(jié)果如下:SQL>SELECTTABLESPACE_NAME,CONTENTS,STATUSFROMDBA_TABLESPACES;TABLESPACE_NAME CONTENTS STATUS--------------- ---- -----SYSTEM PERMANENT ONLINEUNDOTBS1 UNDO ONLINESYSAUX PERMANENT ONLINETEMP TEMPORARY ONLINEUSERS PERMANENT ONLINEEXAMPLE PERMANENT ONLINEORCLTBS01 PERMANENT ONLINEORCLTBS02 PERMANENT ONLINE已選擇8行。查看表空間信息【例】通過視圖DBA_TABLESPACES查查看表空間信息“表空間管理”頁(yè)面操作按鈕查看表空間信息“表空間管理”頁(yè)面操作按鈕創(chuàng)建表空間1.本地管理表空間【例】在CREATETABLESPACE語句中使用EXTENTMANAGEMENTLOCAL子句,可以創(chuàng)建一個(gè)本地管理表空間,代碼如下:SQL>CREATETABLESPACEOrclTBS01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE50MEXTENTMANAGEMENTLOCALAUTOALLOCATE;

表空間已創(chuàng)建。創(chuàng)建表空間1.本地管理表空間創(chuàng)建表空間【例】在創(chuàng)建表空間OrclTBS02時(shí),指定其最小區(qū)間為128KB,代碼如下:SQL>CREATETABLESPACEOrclTBS02DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS02.dbf'SIZE30MEXTENTMANAGEMENTLOCALUNIFORMSIZE128K;表空間已創(chuàng)建。創(chuàng)建表空間【例】在創(chuàng)建表空間OrclTBS02時(shí),指定其最創(chuàng)建表空間2.大文件表空間【例】在CREATETABLESPACE語句中使用BIGFILE關(guān)鍵詞可以創(chuàng)建大文件表空間,代碼如下:SQL>CREATEBIGFILETABLESPACEbigtbsDATAFILE'C:\oracle\product\10.2.0\oradata\orcl\bigtbs.dbf'SIZE10G;表空間已創(chuàng)建。創(chuàng)建表空間2.大文件表空間創(chuàng)建表空間3.臨時(shí)表空間【例】創(chuàng)建臨時(shí)表空間tmptbs,代碼如下:SQL>CREATETEMPORARYTABLESPACEtmptbsTEMPFILE'C:\oracle\product\10.2.0\oradata\orcl\tmptbs.dbf'SIZE20MREUSEEXTENTMANAGEMENTLOCALUNIFORMSIZE16M;表空間已創(chuàng)建。創(chuàng)建表空間3.臨時(shí)表空間創(chuàng)建表空間創(chuàng)建表空間頁(yè)面

單擊此按鈕保存輸入名稱創(chuàng)建大文件表空間創(chuàng)建表空間創(chuàng)建表空間頁(yè)面單擊此按鈕保存輸入名稱創(chuàng)建大文件表設(shè)置和修改表空間屬性1.重命名表空間【例】將表空間OrclTBS02修改為OrclTBS03,可以使用下面的語句:SQL>ALTERTABLESPACEOrclTBS02RENAMETOOrclTBS03;表空間已更改。

設(shè)置和修改表空間屬性1.重命名表空間設(shè)置和修改表空間屬性2.本地管理表空間

【例】在ALTERTABLESPACE語句中使用ADDDATAFILE子句,可以在本地管理表空間中增加數(shù)據(jù)文件,代碼如下:SQL>ALTERTABLESPACEOrclTBS01ADDDATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS011.dbf'SIZE10M;表空間已更改。

設(shè)置和修改表空間屬性2.本地管理表空間設(shè)置和修改表空間屬性3.大文件表空間【例】修改大文件表空間bigtbs的數(shù)據(jù)文件大小為4GB,代碼如下:SQL>ALTERTABLESPACEbigtbsRESIZE4G;表空間已更改。設(shè)置和修改表空間屬性3.大文件表空間設(shè)置和修改表空間屬性4.臨時(shí)表空間【例】在臨時(shí)表空間tmptbs中添加臨時(shí)文件,tmptbs01.dbf,文件大小為20MB,代碼如下:SQL>ALTERTABLESPACEtmptbsADDTEMPFILE'F:\oracle\product\10.2.0\oradata\orcl\tmptbs01.dbf'SIZE20M;表空間已更改。設(shè)置和修改表空間屬性4.臨時(shí)表空間設(shè)置和修改表空間屬性5.設(shè)置聯(lián)機(jī)和脫機(jī)將數(shù)據(jù)庫(kù)的一部分設(shè)置為不可訪問,而其他部分可以訪問。執(zhí)行脫機(jī)表空間備份。在升級(jí)或維護(hù)應(yīng)用程序時(shí),將應(yīng)用程序及其使用的表臨時(shí)設(shè)置為不可訪問。重命名或重新分配表空間。設(shè)置和修改表空間屬性5.設(shè)置聯(lián)機(jī)和脫機(jī)設(shè)置和修改表空間屬性ALTERTABLESPACE…OFFLINE語句設(shè)置表空間為脫機(jī)狀態(tài)

【例】將表空間OrclTBS01設(shè)置為脫機(jī)狀態(tài):SQL>ALTERTABLESPACEOrclTBS01OFFLINE;DBA_TABLESPACES視圖查看表空間的狀態(tài)SQL>SELECTTABLESPACE_NAME,CONTENTS,STATUSFROMDBA_TABLESPACES;ALTERTABLESPACE…ONLINE語句設(shè)置表空間為聯(lián)機(jī)狀態(tài)?!纠繉⒈砜臻gOrclTBS01設(shè)置為聯(lián)機(jī)狀態(tài):SQL>ALTERTABLESPACEOrclTBS01ONLINE;設(shè)置和修改表空間屬性ALTERTABLESPACE…OFF設(shè)置和修改表空間屬性

6.設(shè)置只讀表空間ALTERTABLESPACE…READONLY語句設(shè)置只讀表空間【例】將表空間OrclTBS01設(shè)置為只讀表空間:SQL>ALTERTABLESPACEOrclTBS01READONLY;ALTERTABLESPACE…READWRITE語句可以將只讀表空間設(shè)置為可讀寫狀態(tài)?!纠繉⒈砜臻gOrclTBS01設(shè)置為可讀寫狀態(tài):SQL>ALTERTABLESPACEOrclTBS01READWRITE;設(shè)置和修改表空間屬性6.設(shè)置只讀表空間設(shè)置和修改表空間屬性編輯表空間頁(yè)面單擊此按鈕保存添加、編輯和移去數(shù)據(jù)文件設(shè)置和修改表空間屬性編輯表空間頁(yè)面單擊此按鈕保存添加、編輯刪除表空間DROPTABLESPACE語句刪除表空間?!纠縿h除表空間OrclTBS01:SQL>DROPTABLESPACEOrclTBS01;表空間已刪除。INCLUDINGCONTENTS子句可以在刪除表空間的同時(shí)刪除其中的段,例如:SQL>DROPTABLESPACEOrclTBS01INCLUDINGCONTENTS;INCLUDINGCONTENTSANDDATAFILE子句可以在刪除表空間的同時(shí),刪除包含的段和數(shù)據(jù)文件:SQL>DROPTABLESPACEOrclTBS03INCLUDINGCONTENTSANDDATAFILES;刪除表空間DROPTABLESPACE語句刪除表空間。段和數(shù)據(jù)塊管理SEGMENTSPACEMANAGEMENT子句可定義段空間管理方式【例】創(chuàng)建自動(dòng)段管理方式的表空間MyTBS01:SQL>CREATETABLESPACEOrclTBS01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE30MEXTENTMANAGEMENTLOCALAUTOALLOCATESEGMENTSPACEMANAGEMENTAUTO;【例】創(chuàng)建手動(dòng)段管理方式的表空間MyTBS01:SQL>CREATETABLESPACEOrclTBS01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE30MEXTENTMANAGEMENTLOCALAUTOALLOCATESEGMENTSPACEMANAGEMENTMANUAL;

段和數(shù)據(jù)塊管理SEGMENTSPACEMANAGEME段和數(shù)據(jù)塊管理數(shù)據(jù)塊是Oracle數(shù)據(jù)庫(kù)的最小存儲(chǔ)單元,在初始化參數(shù)DB_BLOCK_SIZE中定義了標(biāo)準(zhǔn)數(shù)據(jù)塊的大小。在創(chuàng)建表空間時(shí),如果不特殊指定,將使用DB_BLOCK_SIZE中定義的數(shù)據(jù)作為數(shù)據(jù)塊的大小?!纠靠梢栽贑REATETABLESPACE語句中使用BLOCKSIZE子句指定非標(biāo)準(zhǔn)數(shù)據(jù)塊的大?。篠QL>CREATETABLESPACEOrclTBS01DATAFILE'F:\oracle\product\10.2.0\oradata\orcl\OrclTBS01.dbf'SIZE30MEXTENTMANAGEMENTLOCALAUTOALLOCATEBLOCKSIZE8K;新創(chuàng)建的表空間數(shù)據(jù)塊大小為8K。段和數(shù)據(jù)塊管理數(shù)據(jù)塊是Oracle數(shù)據(jù)庫(kù)的最小存儲(chǔ)單元,在撤銷表空間撤銷記錄可以用于完成如下功能:當(dāng)執(zhí)行ROLLBACK命令時(shí),完成回滾操作?;謴?fù)數(shù)據(jù)庫(kù)。使用閃回查詢分析以前時(shí)間點(diǎn)的數(shù)據(jù)。使用閃回技術(shù)從邏輯破壞中恢復(fù)數(shù)據(jù)。初始化參數(shù)UNDO_TABLESPACE設(shè)置默認(rèn)的撤銷表空間?!纠渴褂肅REATEUNDOTABLESPACE語句創(chuàng)建撤銷表空間:SQL>CREATEUNDOTABLESPACEundotbs01DATAFILE'C:\oracle\product\10.2.0\oradata\orcl\undotbs02.dbf'SIZE2MREUSE;表空間已創(chuàng)建。撤銷表空間撤銷記錄可以用于完成如下功能:5.2控制文件管理創(chuàng)建控制文件恢復(fù)控制文件刪除控制文件查看控制文件信息5.2控制文件管理創(chuàng)建控制文件創(chuàng)建控制文件創(chuàng)建初始控制文件創(chuàng)建控制文件創(chuàng)建初始控制文件創(chuàng)建控制文件

創(chuàng)建控制文件副本(1)關(guān)閉數(shù)據(jù)庫(kù)。(2)將當(dāng)前的控制文件復(fù)制到其他目錄下。(3)修改初始化參數(shù)CONTROL_FILES,增加新的控制文件或者修改原有的控制文件。(4)重新啟動(dòng)數(shù)據(jù)庫(kù)。創(chuàng)建控制文件創(chuàng)建控制文件副本創(chuàng)建控制文件創(chuàng)建新的控制文件數(shù)據(jù)庫(kù)的控制文件被永久破壞,而且沒有對(duì)控制文件進(jìn)行備份。需要修改數(shù)據(jù)庫(kù)名?!纠渴褂肅REATECONTROLFILE語句創(chuàng)建控件:CREATECONTROLFILESETDATABASEdb_nameLOGFILEGROUP1('c:\oracle\product\10.2.0\oradata\db_name\redo01_01.log','c:\oracle\product\10.2.0\oradata\db_name\redo01_02.log'),……RESETLOGSDATAFILE'c:\oracle\product\10.2.0\oradata\db_name\system01.dbf'SIZE3M,'c:\oracle\product\10.2.0\oradata\db_name\rbs01.dbs'SIZE5M,'c:\oracle\product\10.2.0\oradata\db_name\users01.dbs'SIZE5M,'c:\oracle\product\10.2.0\oradata\db_name\temp01.dbs'SIZE5MMAXLOGFILES50MAXLOGMEMBERS3MAXLOGHISTORY400MAXDATAFILES200MAXINSTANCES6ARCHIVELOG;創(chuàng)建控制文件創(chuàng)建新的控制文件創(chuàng)建控制文件創(chuàng)建新的控制文件(1)獲取數(shù)據(jù)庫(kù)的數(shù)據(jù)文件和重做日志文件列表。【例】從視圖V$DATAFILE中獲取數(shù)據(jù)文件的信息:SQL>SELECTNAMEFROMV$DATAFILE;NAME---------------------------------------------F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSTEM01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\UNDOTBS01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\SYSAUX01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\USERS01.DBFF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\EXAMPLE01.DBF【例】從視圖V$LOGFILE中獲取日志文件的信息:SQL>SELECTMEMBERFROMV$LOGFILE;MEMBER---------------------------------------------F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOGF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOGF:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG

創(chuàng)建控制文件創(chuàng)建新的控制文件創(chuàng)建控制文件(2)關(guān)閉數(shù)據(jù)庫(kù)。(3)備份所有的數(shù)據(jù)文件和重做日志文件。(4)使用STARTUPNOMOUNT啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例。(5)使用CREATECONTROLFILE語句創(chuàng)建控制文件。如果需要重命名數(shù)據(jù)庫(kù),則使用RESETLOGS子句,否則使用NORESETLOGS子句。(6)將新的控制文件備份到其他不在線的存儲(chǔ)介質(zhì)中,如U盤、移動(dòng)硬盤或磁帶等。(7)根據(jù)實(shí)際情況修改CONTROL_FILE參數(shù);如果修改了數(shù)據(jù)庫(kù)名稱,則還需要修改DB_NAME參數(shù)。(8)如果需要的話,則恢復(fù)數(shù)據(jù)庫(kù)。(9)如果在第8步中進(jìn)行了恢復(fù)數(shù)據(jù)庫(kù)的操作,則需要執(zhí)行ALTERDATABASEOPEN語句打開數(shù)據(jù)庫(kù)。如果在創(chuàng)建控制文件時(shí)使用了RESETLOGS子句,則需要使用ALTERDATABASEOPENRESETLOGS語句。創(chuàng)建控制文件(2)關(guān)閉數(shù)據(jù)庫(kù)?;謴?fù)控制文件如果控制文件被破壞,但存儲(chǔ)控制文件的目錄仍然是可訪問:關(guān)閉數(shù)據(jù)庫(kù)實(shí)例;使用操作系統(tǒng)命令將控制文件副本復(fù)制到控制文件目錄下;使用STARTUP命令打開數(shù)據(jù)庫(kù)實(shí)例。如果存儲(chǔ)介質(zhì)被破壞,導(dǎo)致存儲(chǔ)控制文件的目錄無法訪問:關(guān)閉數(shù)據(jù)庫(kù)實(shí)例;使用操作系統(tǒng)命令將控制文件副本復(fù)制到一個(gè)新的可以訪問的目錄下;修改CONTROL_FILES參數(shù),將無效的控制文件目錄修改為新的目錄;使用STARTUP命令打開數(shù)據(jù)庫(kù)實(shí)例?;謴?fù)控制文件如果控制文件被破壞,但存儲(chǔ)控制文件的目錄仍然是刪除控制文件(1)關(guān)閉數(shù)據(jù)庫(kù)。(2)編輯CONTROL_FILES參數(shù)的值,刪除指定的控制文件信息。(3)重新啟動(dòng)數(shù)據(jù)庫(kù)。刪除控制文件(1)關(guān)閉數(shù)據(jù)庫(kù)。查看控制文件信息與控制文件相關(guān)的視圖視圖名說明V$DATABASE顯示控制文件中描述的數(shù)據(jù)庫(kù)信息V$CONTROLFILE顯示控制文件的名稱列表V$CONTROLFILE_RECORD_SECTION顯示控制文件的記錄信息V$PARAMETER顯示初始化參數(shù)CONTROL_FILES中定義的控制文件名稱查看控制文件信息與控制文件相關(guān)的視圖視圖名說查看控制文件信息【例】從視圖V$DATABASE中查詢數(shù)據(jù)庫(kù)編號(hào)、數(shù)據(jù)庫(kù)名稱和日志模式等信息:SQL>SELECTDBID,NAME,LOG_MODEFROMV$DATABASE;DBID NAME LOG_MODE------ ----- ----------1140083184 ORCL NOARCHIVELOG【例】從視圖V$CONTROLFILE_RECORD_SECTION中查詢到控制文件的記錄類型、記錄大小、記錄總數(shù)量、使用記錄數(shù)量等信息:SQL>SELECTTYPE,RECORD_SIZE,RECORDS_TOTAL,RECORDS_USEDFROMV$CONTROLFILE_RECORD_SECTION;TYPE RECORD_SIZERECORDS_TOTAL RECORDS_USED-------------- ------ ------ ------DATABASE 316 1 1CKPTPROGRESS8180 11 0REDOTHREAD256 8 1REDOLOG 72 16 3DATAFILE 428 100 5查看控制文件信息【例】從視圖V$DATABASE中查詢數(shù)據(jù)庫(kù)5.3重做日志管理重做日志的基本概念查看重做日志信息創(chuàng)建重做日志組和成員重命名重做日志成員刪除重做日志組和成員清空重做日志文件

5.3重做日志管理重做日志的基本概念重做日志的基本概念LGWR寫入重做日志的過程重做日志的基本概念LGWR寫入重做日志的過程重做日志的基本概念重做日志的多元性重做日志的基本概念重做日志的多元性重做日志的基本概念LGWR對(duì)重做日志文件無效的響應(yīng)情況LGWR的動(dòng)作LGWR可以寫入組中的至少一個(gè)成員文件正常完成寫操作。LGWR寫入組中可訪問的成員文件,忽略不可訪問的成員文件在日志切換時(shí),LGWR無法訪問下一個(gè)組,因?yàn)樵摻M需要被歸檔臨時(shí)停止數(shù)據(jù)庫(kù)操作,等待該組可以被訪問或該組已經(jīng)被歸檔在日志切換時(shí),由于介質(zhì)被破壞,下一組的所有成員都無法被訪問Oracle數(shù)據(jù)庫(kù)返回錯(cuò)誤,數(shù)據(jù)庫(kù)實(shí)例被關(guān)閉。此時(shí),需要從有效的重做日志文件中執(zhí)行介質(zhì)恢復(fù)操作。數(shù)據(jù)庫(kù)恢復(fù)操作請(qǐng)參照第8章理解。如果數(shù)據(jù)庫(kù)的檢查點(diǎn)已經(jīng)超出了丟失的重做日志,則不需要進(jìn)行介質(zhì)恢復(fù)了,因?yàn)橹刈鋈罩局杏涗浀臄?shù)據(jù)寫入到數(shù)據(jù)文件中?,F(xiàn)在只需要?jiǎng)h除無效的重做日志組。如果數(shù)據(jù)庫(kù)還沒有對(duì)失效的日志進(jìn)行歸檔操作,則執(zhí)行ALTERDATABASECLEARUNARCHIVEDLOG禁止歸檔操作,這樣就可以刪除日志文件了當(dāng)LGWR寫入時(shí),所有組中的成員文件都突然無法訪問Oracle數(shù)據(jù)庫(kù)返回錯(cuò)誤,數(shù)據(jù)庫(kù)實(shí)例被關(guān)閉。此時(shí),需要從有效的重做日志文件中執(zhí)行介質(zhì)恢復(fù)操作。如果介質(zhì)沒有被破壞,只是不小心掉線了,則不需要執(zhí)行介質(zhì)恢復(fù),只要將介質(zhì)恢復(fù)在線,然后讓數(shù)據(jù)庫(kù)執(zhí)行自動(dòng)實(shí)例恢復(fù)即可重做日志的基本概念LGWR對(duì)重做日志文件無效的響應(yīng)情查看重做日志信息重做日志組管理頁(yè)面單擊此按鈕創(chuàng)建重做日志組查看重做日志信息重做日志組管理頁(yè)面單擊此按鈕創(chuàng)建重做日志查看重做日志信息查看重做日志組頁(yè)面查看重做日志信息查看重做日志組頁(yè)面查看重做日志信息【例】查詢視圖V$LOG,顯示控制文件中重做日志文件的信息:SQL>SELECTGROUP#,ARCHIVED,STATUSFROMV$LOG;GROUP#ARCSTATUS---------------1NOINACTIVE2NOCURRENT3NOINACTIVE4NOINACTIVE10NOINACTIVE【例】查詢視圖V$LOGFILE,顯示重做日志組及其成員的基本信息:SQL>SELECTGROUP#,STATUS,MEMBERFROMV$LOGFILE;GROUP#STATUSMEMBER----- ------- ----------------------------------------------3 STALE F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO03.LOG2 F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO02.LOG1 F:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG4 STALE F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\LOG1C.RDO4 STALE F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\LOG2C.RDO2 F:\ORACLE\PRODUCT\10.2.0\DB_2\DATABASE\LOG3A.ODO已選擇6行。查看重做日志信息【例】查詢視圖V$LOG,顯示控制文件中重做創(chuàng)建重做日志組和成員創(chuàng)建重做日志組單擊此按

鈕保存添加、編輯和移去重做日志成員編輯組號(hào)和文件大小創(chuàng)建重做日志組和成員創(chuàng)建重做日志組單擊此按

鈕保存添加、創(chuàng)建重做日志組和成員ALTERDATABASE語句創(chuàng)建重做日志組【例】在ALTERDATABASE語句中使用ADDLOGFILE子句也可以創(chuàng)建重

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論