




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、管理表空間和文件本章內(nèi)容容10.1表空間概概述10.2管理表空空間10.3管理數(shù)據(jù)據(jù)文件10.4控制文件件的管理理10.5日志文件件的管理理10.1表空間概概述表空間是是Oracle數(shù)據(jù)庫中中最大的的邏輯結(jié)結(jié)構(gòu)。Oracle數(shù)據(jù)庫是是由一個個或多個個表空間間組成。表空間和和數(shù)據(jù)庫庫物理結(jié)結(jié)構(gòu)聯(lián)系系密切。它在物物理上與與磁盤上上的數(shù)據(jù)據(jù)文件相相對應(yīng)。數(shù)據(jù)邏邏輯上存存放在表表空間中中;物理理上存放放在數(shù)據(jù)據(jù)文件中中。Oracle數(shù)據(jù)庫的的存儲結(jié)結(jié)構(gòu)表空間的的作用控制數(shù)據(jù)據(jù)庫所占占用的磁磁盤空間間。控制用戶戶所占用用的表空空間配額額。通過表空空間管理理數(shù)據(jù)流流向,提提高I/O性能。將表空間間設(shè)置為為
2、只讀狀狀態(tài)從而而保持靜靜態(tài)數(shù)據(jù)據(jù)。表空間提提供了一一個備份份和恢復(fù)復(fù)單位。表空間的的類型按是否存存放的是是系統(tǒng)數(shù)數(shù)據(jù)分:按表空間間的存放放內(nèi)容分分:按表空間間中文件件的大小小及最多多個數(shù)分分:表空間的的類型I按是否存存放的是是系統(tǒng)數(shù)數(shù)據(jù)分:系統(tǒng)表空空間:SYSTEM:存儲Oracle的系統(tǒng)數(shù)數(shù)據(jù)(如如數(shù)據(jù)字字典表)。創(chuàng)建數(shù)據(jù)據(jù)庫時,SYSTEM第一個被被創(chuàng)建,具有較較高的管管理權(quán)限限,不能能被脫機(jī)機(jī)。SYSAUX:是Oracle新引入的的輔助系系統(tǒng)表空空間。存存放其他他可選組組件的系系統(tǒng)數(shù)據(jù)據(jù)。兩者都不不可以被被刪除和和更改。非系統(tǒng)表表空間:分離不同同類型數(shù)數(shù)據(jù)信息息,便于于管理表表空間。表空
3、間的的類型II按表空間間內(nèi)容分分:永久性表表空間、臨時表表空間、撤銷表表空間selecttablespace_name,contents fromdba_tablespaces;永久性表表空間:存放永久久性數(shù)據(jù)據(jù)。臨時表空空間:存儲的是是臨時性性數(shù)據(jù)。(orderby等SQL語句會產(chǎn)產(chǎn)生大量量的臨時時數(shù)據(jù)。在創(chuàng)建建用戶時時,要給給其指定定一個臨臨時表空空間,存存放其操操作產(chǎn)生生的臨時時數(shù)據(jù),如果沒沒有指定定,就會會增用系系統(tǒng)表空空間,影影響服務(wù)務(wù)器效率率。)撤銷表空空間:存放回滾滾段的數(shù)數(shù)據(jù)信息息。表空間的的類型III大文件表表空間、小文件件表空間間select*fromv$tablespac
4、e;selecttablespace_name,bigfilefromdba_tablespaces;大文件表表空間:是Oracle引入的表表空間,為超大大數(shù)據(jù)庫庫設(shè)計(jì)的的。大文文件表空空間只能能放置一一個數(shù)據(jù)據(jù)文件,數(shù)據(jù)文文件可以以包括4G個數(shù)據(jù)塊塊。最大大可以達(dá)達(dá)到32TB。小文件表表空間:可以放置置1022個數(shù)據(jù)文文件。表空間的的區(qū)、段段管理方方式區(qū)(Extent)的管理理方式段 (Segment)的管理理方式表空間的的區(qū)管理理方式針對區(qū)的的分配方方式的不不同,表表空間的的管理有有兩種管管理方式式:數(shù)據(jù)字典典管理方方式(DMT)傳統(tǒng)管理理方式。10g已經(jīng)不再再使用該該方式。Oracle通
5、過對數(shù)據(jù)字字典中相相關(guān)的基基礎(chǔ)表進(jìn)進(jìn)行更新新來分配新新區(qū)、回回收舊區(qū)區(qū)。本地管理理方式(LMT)11g默認(rèn)的管管理方式式。表空空間中所所有數(shù)據(jù)據(jù)文件頭頭均有一一個位圖圖(bitmap),用于記記錄表空空間所有有區(qū)的分分配情況況。更新新該位圖圖來實(shí)現(xiàn)現(xiàn)區(qū)的分分配和回回收。不不對任何何表作更更新操作作。在本地管管理方式式下,可可以用關(guān)關(guān)鍵字來來指定表表空間區(qū)區(qū)的分配配方式:UNIFORM:統(tǒng)一分配配,所有有區(qū)大小小都相同同。AUTOALLOCATE:自動分配配,指定定由Oracle來自動管管理區(qū)大大小,Oracle會自動選選擇合適適的大小小。表空間的的段管理理方式在本地管管理方式式中,還還可以指指
6、定段的管理理方式:段的的管理主主要是Oracle管理段中中已用數(shù)數(shù)據(jù)塊和和空閑數(shù)數(shù)據(jù)塊的的機(jī)制。MANUAL(手工):通過空閑閑列表管管理。AUTO(自動):使用位圖圖管理。根據(jù)位位圖中取取值來判判斷數(shù)據(jù)據(jù)塊是否否可用。效率高高。表空間的的狀態(tài)一、讀寫寫(read write)二、只讀讀(Read only)三、脫機(jī)機(jī)狀態(tài)(Offline)正常(Normal):執(zhí)行檢檢查點(diǎn),不需要要恢復(fù)。臨時(Temporary):執(zhí)行行檢查點(diǎn)點(diǎn),但不不必保證證所有數(shù)數(shù)據(jù)文件件都聯(lián)機(jī)機(jī)可用;如脫機(jī)機(jī)時,有有文件不不可用,忽略錯錯誤。可可能需要要恢復(fù)。立即(Immediate):不執(zhí)執(zhí)行檢查查點(diǎn)。需需要恢復(fù)復(fù)。
7、用于恢復(fù)復(fù)(ForRecover):用于于恢復(fù)的的關(guān)閉方方式。10.2管理表空空間10.2.1管理表空空間原則則1.使用多重重表空間間。將用戶數(shù)數(shù)據(jù)與數(shù)數(shù)據(jù)字典典數(shù)據(jù)分分離,并并將不同同表空間間的數(shù)據(jù)據(jù)文件分分別存儲儲在不同同磁盤上上可以降降低I/O競爭;將一個應(yīng)應(yīng)用的數(shù)數(shù)據(jù)與其其他應(yīng)用用分離,可以避避免表空空間脫機(jī)機(jī)時多個個應(yīng)用受受到影響響;可根據(jù)需需要將單單個表空空間脫機(jī)機(jī),從而而獲得較較好的可可用性;通過為不不同類型型的數(shù)據(jù)據(jù)庫預(yù)留留表空間間,以達(dá)達(dá)到優(yōu)化化表空間間的目的的,如更更新較高高的或只只讀、或或臨時段段存儲等等;備份單個個表空間間。2.為用戶指指定表空空間限額額。要創(chuàng)建、管理與
8、與使用表表空間,必須首首先以Sys用戶并以以assysdba身份登錄錄數(shù)據(jù)庫庫。啟動SQL*Plus時的帳戶戶和口令令不需要要加引號號。命令格式式:sqlplus sys/as sysdba10.2.2創(chuàng)建表空空間用戶必須須擁有Createtablespace權(quán)限才能能創(chuàng)建表表空間。所有的表表空間都都應(yīng)有sys用戶來創(chuàng)創(chuàng)建。在表空間間的創(chuàng)建建中,Oracle完成幾個個工作:在數(shù)據(jù)字字典、控控制文件件中記錄錄該表空空間。在操作系系統(tǒng)中指指定相應(yīng)應(yīng)的物理理文件對對應(yīng)數(shù)據(jù)據(jù)文件。在預(yù)警文文件中記記錄下創(chuàng)創(chuàng)建表空空間的信信息。1.創(chuàng)建永久久性的表表空間1.要指定表表空間名名;2.指定表空空間的類類型;
9、3.指定和表表空間物物理對應(yīng)應(yīng)的數(shù)據(jù)據(jù)文件及及屬性;4.指定區(qū)的的管理參參數(shù);5.指定段的的管理參參數(shù);6.指定其他他屬性logging /nologging等命令格式式:SQLCREATEundoTABLESPACEtablespace_namedatafilefilespecautoextend_clause,filespecautoextend_clauseminimum extentintegerk|m|blocksizeintegerk|logging|nologging|defaultstorage_clause|online|offline|permanent|temporary
10、|extent_management_clause|segment_management_clause;Createundotablespace:創(chuàng)建還原原表空間間,用于于存入重重做日志志文件Createtemporary tablespace:創(chuàng)建臨時時表空間間,用于于臨時數(shù)數(shù)據(jù)的存存放;Createtablespace:創(chuàng)建存放放用戶數(shù)數(shù)據(jù)表空空間Tablespace name:表空間名名datafilefilespec:指定數(shù)據(jù)據(jù)文件的的具體位位置和大大小如果有多多個文件件時,用用逗號“,”隔隔開文件名必必須為絕絕對地址址,而不不能是相相對地址址Logging|nologging:是否創(chuàng)
11、建建重做日日志Extentmanagementlocal:存儲區(qū)管管理方法法本地管理理(LOCAL):用二進(jìn)制制的方式式管理磁磁盤,有很高的的效率,同進(jìn)能最最大限度度的使用用磁盤.同時能夠夠自動跟跟蹤記錄錄臨近空空閑空間間的情況況,避免免進(jìn)行空空閑區(qū)的的合并操操作。UNIFORMSEGMENTSPACEMANAGEMENT:指定區(qū)大大小,也也可使用用默認(rèn)值值(1MB)segment managementlocal:磁盤擴(kuò)展展管理方方法使用該選選項(xiàng)時區(qū)區(qū)大小由由系統(tǒng)自自動確定定。AUTO:只能使用用在本地地管理的的表空間間中.使用LOCAL管理表空空間時,數(shù)據(jù)塊中中的空閑閑空間增增加或減減少后,
12、其新狀狀態(tài)都會會在位圖圖中反映映出來。例:創(chuàng)建建一個名名為tbspace的表空間間:SQLCREATE TABLESPACEtbspacenologging datafile D:appAdministratororadatatbspacetbspace01.orasize 50mblocksize8192extentmanagementlocaluniform size256ksegment space managementauto;2.使一個表表空間脫脫機(jī)命令格式式:SQLALTERTABLESPACEoffline;例:將表表空間tbspace脫機(jī):SQLALTERTABLESPACEt
13、bspace offline;注意:SYSTEM表空間不不能脫機(jī)機(jī)3.使一個表表空間聯(lián)聯(lián)機(jī)命令格式式:SQLALTERTABLESPACEonline;例:將表表空間tbspace聯(lián)機(jī):SQLALTERTABLESPACEtbspace online;4.使表空間間只讀命令格式式:SQLALTERTABLESPACEread only;例:將表表空間tbspace只讀:SQLALTERTABLESPACEtbspace readonly;5.使表空間間可讀可可寫命令格式式:SQLALTERTABLESPACEread write;例:將表表空間tbspace脫機(jī):SQLALTERTABLESP
14、ACEtbspace readwrite;6.創(chuàng)建臨時時表空間間命令格式式:SQLCREATE TEMPORARYTABLESPACE temfile size mautoexten extentmanagementlocaluniform size;例:創(chuàng)建建臨時表表空間tempSQLCREATE TEMPORARYTABLESPACE temptempfileD:appAdministratororadatatemptemp01.orasize 500mautoextendoffextentmanagementlocaluniform size512k;7.添加臨時時表空間間的數(shù)據(jù)據(jù)文件命
15、令格式式:SQLALTERTABLESPACEaddtempfilesize m;例:為臨臨時表空空間temp_ren添加數(shù)據(jù)據(jù)文件:SQLALTERTABLESPACEtemp_renaddtempfileD:appAdministratororadatatemptemp.dbfsize100m;8.調(diào)整臨時時表空間間的數(shù)據(jù)據(jù)文件命令格式式:SQLALTERDATABASEtempfileresizem;例:調(diào)整整臨時表表空間的的數(shù)據(jù)文文件大小小SQLALTERDATABASEtempfileD:appAdministratororadatatemptemp.oraresize 20m;9.
16、將表空間間的數(shù)據(jù)據(jù)文件或或臨時文文件脫機(jī)機(jī)命令格式式:SQLALTERDATABASEdatafileoffline;或SQLALTERDATABASEtempfileoffline;示例:SQLALTERDATABASEdatafileD:appAdministratororadatatemptemp.oraoffline;10.將臨時表表空間聯(lián)聯(lián)機(jī)命令格式式:SQLALTERDATABASEtempfileonline;例:SQLALTERDATABASEtempfileD:appAdministratororadatatemptemp.oraonline;11.刪除表空空間,但但不刪除除
17、其文件件命令格式式:SQLDROPTABLESPACE;例:刪除除表空間間tbspace,但不刪刪除其文文件SQLDROPTABLESPACEtbspace ;12.刪除包含含目錄內(nèi)內(nèi)容的表表空間命令格式式:SQLDROPTABLESPACE includingcontents;例:刪除除表空間間tbspace及其包含含的內(nèi)容容:SQLDROPTABLESPACE tbspaceincluding contents;13.刪除包含含目錄內(nèi)內(nèi)容和數(shù)數(shù)據(jù)文件件在內(nèi)的的表空間間命令格式式:SQLDROPTABLESPACE includingcontentsanddatafiles;例:將表表空間t
18、bspace及其包含含的內(nèi)容容、數(shù)據(jù)據(jù)文件及及相關(guān)約約束一同同刪除:SQLDROPTABLESPACE tbspaceincluding contents anddatafiles;14.當(dāng)含有參參照笥約約束時,刪除包包含目錄錄內(nèi)容和和數(shù)據(jù)文文件在內(nèi)內(nèi)的表空空間命令格式式:SQLDROPTABLESPACE includingcontentsanddatafiles cascadeconstraints;例:將表表空間tbspace及其包含含的內(nèi)容容、數(shù)據(jù)據(jù)文件及及相關(guān)約約束一同同刪除:SQLDROPTABLESPACE tbspaceincluding contents anddatafil
19、escascadeconstraints;15.表空間更更名說明:在Oracle11g中可直接接更名永永久表空空間和臨臨時表空空間。但但是,SYSTME和SYSAUX表空間不不能更名名。命令格式式:SQLALTERTABLESPACErename to ;例:將表表空間tbspace更改為newtbspace:SQLALTERTABLESPACEtbspacerenametonewtbspace;10.2.3查詢表空空間V$tablespaceDBA_TablespacesALL_TablespacesUSER_TablespacesDBA_segmentsALL_segmentsUSER_s
20、egmentsDBA_extentsALL_extentsUSER_extentsV$datafileV$tempfileDBA_datafilesDBA_tempfilesDBA_ts_quotasDBA_free_spaceUSER_free_space系統(tǒng)數(shù)據(jù)據(jù)字典dba_tablespaces中記錄了了關(guān)于表表空間的的信息:select*from sys.dba_tablespaces;字段含義字段含義tablespace_nameTablespace_namemin_extlenminimum extent size for the tablespaceblock_sizetable
21、space block sizestatusonline,offline readinitial_extentdefault initial extent sizecontentspermanent, temporary, undonext_extentdefault incremental extent sizeloggingdefault logging attributemin_extentsdefault minimum number of extentsforce_loggingtablespace force logging modemax_extentsdefault maxim
22、um number of extentsextent_managementdictionary, localpct_increasedefault percent increase for extent sizeallocation_typetype of extent allocation in effect for this tablespaceplugged_insegment_space_managementauto, manual列出表空空間、表表空間文文件、分分配的空空間、空空閑空間間以及下下一個空空閑分區(qū)區(qū)列出數(shù)據(jù)據(jù)文件、表空間間名以及及大?。毫谐霰砜湛臻g、大大小、空空閑空間間以
23、及空空閑空間間的百分分比計(jì)算表空空間每個個數(shù)據(jù)文文件實(shí)際際的最小小空間以以及對應(yīng)應(yīng)的文件件名,其其大小與與磁盤操操作系統(tǒng)統(tǒng)中顯示示的不同同10.3管理數(shù)據(jù)據(jù)文件10.3.1數(shù)據(jù)文件件數(shù)據(jù)文件件是用于于存儲數(shù)數(shù)據(jù)庫中中數(shù)據(jù)的的操作系系統(tǒng)文件件。創(chuàng)建建數(shù)據(jù)庫庫時會創(chuàng)創(chuàng)建幾個個Oracle系統(tǒng)使用用的數(shù)據(jù)據(jù)文件;數(shù)據(jù)文件件與表空空間密不不可分的的,創(chuàng)建建表空間間同時必必須為該該表空間間創(chuàng)建對對應(yīng)的數(shù)數(shù)據(jù)文件件;數(shù)據(jù)據(jù)文件依依賴于表表空間,不能獨(dú)獨(dú)立存在在,在創(chuàng)創(chuàng)建數(shù)據(jù)據(jù)文件時時必須指指定隸屬屬的表空空間。否否則,不不會被存存取。DBA可以單獨(dú)獨(dú)創(chuàng)建數(shù)數(shù)據(jù)文件件,并必必須指定定其隸屬屬的表空空間,也也
24、可以單單獨(dú)對其其進(jìn)行管管理。10.3.2創(chuàng)建數(shù)據(jù)據(jù)文件創(chuàng)建數(shù)據(jù)據(jù)文件的的過程實(shí)實(shí)質(zhì)上就就是向表表空間中中添加文文件的過過程。在創(chuàng)建表表空間時時,通常常會預(yù)先先估計(jì)表表空間所所需要的的存儲空空間大小小,然后后為它建建立若干干適當(dāng)大大小的數(shù)數(shù)據(jù)文件件。如果果在使用用過程中中發(fā)現(xiàn)表表空間存存儲空間間不足,可以再再為它添添加新的的數(shù)據(jù)文文件。10.3.2創(chuàng)建數(shù)據(jù)據(jù)文件可以在創(chuàng)創(chuàng)建表空空間、修修改表空空間、創(chuàng)創(chuàng)建數(shù)據(jù)據(jù)庫時創(chuàng)創(chuàng)建數(shù)據(jù)據(jù)文件。Createtablespace.datafile語句Altertablespace .Adddatafile語句Createtemporary tablespace
25、.tempfile語句Altertablespace addtempfile語句Createdatabase語句例:下面面的語句句為表空空間tbspace添加一個個大小為為20MB的數(shù)據(jù)文文件SQLALTERTABLESPACEUSER012add datafile D:ORADATATESTtbspace01.dbfsize20m;10.3.3修改數(shù)據(jù)據(jù)文件大大小除了創(chuàng)建建新的數(shù)數(shù)據(jù)文件件外,另另一種增增加表空空間的存存儲空間間的方法法是改變變已經(jīng)存存在的數(shù)數(shù)據(jù)文件件的大小小。改變數(shù)據(jù)據(jù)文件大大小的方方式有兩兩種:設(shè)置數(shù)據(jù)據(jù)文件為為自動增增長手動改變變數(shù)據(jù)文文件的大大小1.設(shè)定數(shù)據(jù)據(jù)文件自自
26、動增長長方式1)創(chuàng)建表表空間時時設(shè)定CreatetablespaceDatafile|tempfile size.Autoextend onnext . Maxsize.2)表空間間中增加加一個新新的自增增文件Alterdatabaseadddatafile sizeAutoextend on nextmaxsize 3)取消已已有數(shù)據(jù)據(jù)文件的的自增方方式AlterdatabaseDatafileAutoextend off;4)如果數(shù)數(shù)據(jù)文件件已創(chuàng)建建,現(xiàn)要要修改為為自增AlterdatabasedatafileAutoextend onnext maxsize;2.手動改變變數(shù)據(jù)文文件大小
27、小手動方式式改變數(shù)數(shù)據(jù)文件件大小時時,需要要使用resize語句。例如,下下面的語語句將數(shù)數(shù)據(jù)文件件的大小小增長為為100MB。SQL ALTER DATABASE2datafile D:appAdministratorORADATATESTmy02_1.dbf3resize100m;10.3.4移動數(shù)據(jù)據(jù)文件因不同原原因,在在創(chuàng)建數(shù)數(shù)據(jù)文件件后,需需要考慮慮移動數(shù)數(shù)據(jù)文件件到新的的位置。例如:將一個個迅速增增長的文文件移至至磁盤空空間較大大的盤區(qū)區(qū);調(diào)整整I/O性能;當(dāng)當(dāng)某個磁磁盤損毀毀時,為為了使數(shù)數(shù)據(jù)庫系系統(tǒng)繼續(xù)續(xù)運(yùn)行,也可能能要將一一個或幾幾個數(shù)據(jù)據(jù)文件移移動到其其他磁盤盤上。移動分為
28、為兩種情情況:同同一表空空間下的的數(shù)據(jù)文文件移動動、多個個表空間間下的數(shù)數(shù)據(jù)文件件移動。注意:移移動數(shù)據(jù)據(jù)文件改改變數(shù)據(jù)據(jù)庫物理理結(jié)構(gòu),在操作作之前要要對數(shù)據(jù)據(jù)庫進(jìn)行行備份。以便操操作失敗敗恢復(fù)。在完成成后要及及時備份份控制文文件,記記錄下修修改后的的數(shù)據(jù)庫庫物理結(jié)結(jié)構(gòu)。1.同一表空空間的數(shù)數(shù)據(jù)文件件移動如:將demo表空間下下的數(shù)據(jù)據(jù)文件由由默認(rèn)位位置移至至D:下。步驟: (在在open狀態(tài)下操操作)1.使表空間間脫機(jī);2.移動數(shù)據(jù)據(jù)文件;3.執(zhí)行altertablespace表空間名名renamedatafile文件名,文件名to文件名,文件名;4.使表空間間連機(jī);5.備份控制制文件2.多
29、個表空空間的數(shù)數(shù)據(jù)文件件移動如:將teachertbs表空間的的teachertbs02.dbf、studenttbs表空間的的studenttbs02.dbf由默認(rèn)位位置移至至D:下。步驟:1.使表空間間脫機(jī);2.移動數(shù)據(jù)據(jù)文件;3.使用alterdatabase數(shù)據(jù)庫名名renamedatafile文件名,文件名to文件名,文件名;4.使表空間間聯(lián)機(jī);5.備份控制制文件。刪除數(shù)據(jù)據(jù)文件當(dāng)表空間間的內(nèi)容容不在需需要時,就可以以將其刪刪除。除除系統(tǒng)表表空間及及temp、undotbs外。刪除表空空間的內(nèi)內(nèi)容及數(shù)數(shù)據(jù)文件件。SQL alter tablespacesecond offline;S
30、QL droptablespacesecondincluding contents anddatafiles;SQL alter tablespacetmp tempfile offline;SQL droptablespacetmpincluding contents anddatafiles;查詢數(shù)據(jù)據(jù)文件Dba_tablespacesDba_data_filesDba_temp_filesV$datafileV$tempfile10.4控制文件件的管理理10.4.1控制文件件概述每個Oracle數(shù)據(jù)庫都都必須具具有至少少一個控控制文件件??刂浦莆募r時一個二二進(jìn)制格格式的操操作系統(tǒng)統(tǒng)文件
31、,其中記記錄了關(guān)關(guān)于數(shù)據(jù)據(jù)庫物理理結(jié)構(gòu)的的基本信信息,包包括數(shù)據(jù)據(jù)庫的名名稱、相相關(guān)數(shù)據(jù)據(jù)文件的的名稱和和位置、當(dāng)前的的日志序序列號等等內(nèi)容用用于描述述和維護(hù)護(hù)數(shù)據(jù)庫庫的物理理結(jié)構(gòu)。數(shù)據(jù)庫的的啟動和和正常運(yùn)運(yùn)行都離離不開控控制文件件。啟啟動數(shù)據(jù)據(jù)庫時,Oracle從初始化化參數(shù)文文件中獲獲得控制制文件的的名字及及位置,打開控控制文件件,然后后從控制制文件中中讀取數(shù)數(shù)據(jù)文件件和聯(lián)機(jī)機(jī)日志文文件的信信息,最最后打開開數(shù)據(jù)庫庫。數(shù)據(jù)據(jù)庫運(yùn)行行時,Oracle會修改控控制文件件,所以以,一旦旦控制文文件損壞壞,數(shù)據(jù)據(jù)庫將不不能正常常運(yùn)行。10.4.2創(chuàng)建控制制文件通常創(chuàng)建建控制文文件的時時候有兩兩種:
32、創(chuàng)建數(shù)據(jù)據(jù)庫時創(chuàng)創(chuàng)建初始始控制文文件。在創(chuàng)建數(shù)數(shù)據(jù)庫之之后再創(chuàng)創(chuàng)建控制制文件。所有數(shù)據(jù)據(jù)庫控制制文件遭遭到永久久破壞,沒有任任何備份份。希望改變變數(shù)據(jù)庫庫名稱或或其他一一些數(shù)據(jù)據(jù)庫參數(shù)數(shù)的永久久性設(shè)置置。創(chuàng)建控制制文件使使用createcontrolfile語句:createcontrolfilereusedatabase“test”logfile group 1c:oradatatestredo01.logsize 50M,group2 c:oradatatestredo02.logsize50M,group3 c:oradatatestredo03.logsize50Mnoresetlog
33、snoarchivelogdatafilec:oradatatestsystem01.dbf,c:oradatatestsysaux01.dbf,c:oradatatestundotbs01.dbf,c:oradatatestusers01.dbfmaxlogfiles16maxlogmembers 3maxloghistory 292maxdatafiles100maxinstances8characterset zhs16gbk;創(chuàng)建控制制文件的的步驟如如下:1)獲取數(shù)數(shù)據(jù)庫的的數(shù)據(jù)文文件和重重做日志志文件列列表;2)關(guān)閉數(shù)數(shù)據(jù)庫。Shutdownimmediate3)備份所所有的數(shù)數(shù)據(jù)文
34、件件、重做做日志文文件和spfile參數(shù)文件件;4)使用startup nomount啟動數(shù)據(jù)據(jù)庫實(shí)例例;5)使用createcontrolfile語句創(chuàng)建建控制文文件。如如果需要要重命名名數(shù)據(jù)庫庫,則使使用resetlogs子句,否否則使用用noresetlogs子句;6)將新的的控制文文件備份份到其他他不在線線的存儲儲介質(zhì)中中,如U盤、移動動硬盤或或磁帶等等;7)根據(jù)實(shí)實(shí)際情況況修改control_file參數(shù);如如果修改改了數(shù)據(jù)據(jù)庫名稱稱,則還還需要修修改db_name參數(shù);8)如果需需要的話話,則恢恢復(fù)數(shù)據(jù)據(jù)庫;9)如果在在第8步進(jìn)行了了恢復(fù)數(shù)數(shù)據(jù)庫的的操作,則需要要執(zhí)行alterda
35、tabaseopen語句打開開數(shù)據(jù)庫庫。如果果在創(chuàng)建建控制文文件時使使用了resetlogs子句,則則需要使使用alterdatabaseopen resetlgos語句。10.4.3恢復(fù)控制制文件如果控制制文件被被破壞,但存儲儲控制文文件的目目錄仍然然是可以以訪問的的,可以以使用下下面的方方法恢復(fù)復(fù):1)關(guān)閉數(shù)數(shù)據(jù)庫實(shí)實(shí)例;2)使用操操作系統(tǒng)統(tǒng)將控制制文件副副本復(fù)制制到控制制文件目目錄下;3)使用startup命令打開開數(shù)據(jù)庫庫實(shí)例。如果存儲儲介質(zhì)被被破壞,導(dǎo)致存存儲控制制文件的的目錄無無法訪問問,則可可以使用用下面的的方法恢恢復(fù):1)關(guān)閉數(shù)數(shù)據(jù)庫實(shí)實(shí)例;2)使用操操作系統(tǒng)統(tǒng)將控制制文件副副
36、本復(fù)制制到一個個新的可可以訪問問的目錄錄下;3)修改control_files參數(shù),將將無效的的控制文文件目錄錄修改為為新的目目錄;4)使用startup命令打開開數(shù)據(jù)庫庫實(shí)例。刪除控制制文件修改初始始化參數(shù)數(shù)文件SPFILE中的初始始化參數(shù)數(shù)control_files,刪除不不再需要要的控制制文件的的名稱。1)關(guān)閉數(shù)數(shù)據(jù)庫。2)物理移移出不需需要的控控制文件件,也可可不作。3)重啟數(shù)數(shù)據(jù)庫。移動控制制文件修改初始始化參數(shù)數(shù)文件SPFILE中的初始始化參數(shù)數(shù)control_files,修改需需移動的的控制文文件的名名稱。1)關(guān)閉數(shù)數(shù)據(jù)庫。2)移動需需要移動動的控制制文件到到新位置置。3)重啟數(shù)
37、數(shù)據(jù)庫。10.5日志文件件的管理理日志文件件又被稱稱為重做做日志文文件(redo logfile),用來來記錄Oracle數(shù)據(jù)庫中中的每一一個更改改操作。oracle的日志文文件是記記錄數(shù)據(jù)據(jù)庫變化化的一個個憑證,就是oracle對于一切切數(shù)據(jù)庫庫的操作作的記錄錄 方便便以后查查找分析析錯誤,有可以以恢復(fù)數(shù)數(shù)據(jù)等作作用。重做日志志文件是是由一條條條重做做記錄組組成的,重做記記錄是由由一個個個修改向向量(change vector)組成的。每個修修改向量量對應(yīng)數(shù)數(shù)據(jù)塊。重做日日志文件件是保存存在磁盤盤上的一一個實(shí)際際的文件件,空間間有限,所以,每個Oracle數(shù)據(jù)庫至至少要包包含兩個個或兩個個以
38、上的的重做日日志文件件組,LGWR后臺進(jìn)程程以循環(huán)環(huán)的方式式將重做做記錄寫寫入其中中。10.5.2增加日志志文件一般情況況下,我我們先對對數(shù)據(jù)庫庫的重做做日志文文件組及及成員進(jìn)進(jìn)行數(shù)量量、大小小的規(guī)劃劃,并且且在創(chuàng)建建數(shù)據(jù)庫庫時創(chuàng)建建相應(yīng)的的重做日日志文件件組及成成員。在特定情情況下,如果發(fā)發(fā)現(xiàn)LGWR經(jīng)常處于于等待狀狀態(tài),則則需要考考慮添加加日志組組及其成成員,一一個數(shù)據(jù)據(jù)庫最多多可以擁擁有MAXLOGFILES個日志組組。增加加重做日日志是使使用alterdatabase語句完成成的,執(zhí)執(zhí)行該語語句時要要求用戶戶具有alterdatabase系統(tǒng)權(quán)限限。1.添加重做做日志文文件組當(dāng)警告文文
39、件出現(xiàn)現(xiàn)了checkpoint notcomplete時,應(yīng)該該增加日日志組。增加日日志組的的目的是是為了確確保DBWR進(jìn)程和ARCH進(jìn)程不會會妨礙LGWR進(jìn)程工作作,進(jìn)而而提高系系統(tǒng)性能能。語法:Alterdatabaseaddlogfilegroupn(logfile1reuse,logfile2reuse,logfile3reuse,logfilemreuse)size integerM;日志組1日志組4ALTERDATABASEADDLOGFILEGROUP4 (D:redo04_1.log,D:redo04_2.log)SIZE 10M;redo04_2.logRedo04_1.lo
40、gredo01.logredo01_1.log日志組2redo02.logredo02_1.log日志組3redo03.logredo03_1.log建議:不不指定組組號。新新組號是是自動分分配的下下一個組組號,不不建議使使用跳躍躍式組號號,會耗耗費(fèi)控制制文件的的空間。Select*from v$log;新組的狀狀態(tài)為UNUSED,當(dāng)首次次使用日日志成員員時,該該成員變變?yōu)榛顒觿拥?。添加一個個新的重重做日志志文件組組,組號號5,該組有有兩個成成員,分分別redo05_1.log和redo05_2.log。大小為為10M添加一個個新的重重做日志志文件組組。ALTERDATABASEADDLOGF
41、ILE(redo05_1.log,redo05_2.log) size10m;ALTERDATABASEADDLOGFILE;2.添加重做做日志文文件組的的成員增加日志志成員即即多元化化重做日日志,避避免某個個日志組組的某個個成員損損壞后系系統(tǒng)不能能正常運(yùn)運(yùn)轉(zhuǎn)。語法:AlterdatabaseaddlogfilememberLogfilereuseTogroupn;ALTERDATABASEADDLOGFILEMEMBERD:redo01_3.logTOGROUP1,D:redo02_3.logTOGROUP2,D:redo04_3.logTOGROUP3;日志組1日志組2日志組3Redo01
42、.logRedo01_2.logRedo02.logRedo02_2.logRedo01_3.logRedo02_3.logredo03.logRedo03_2.logRedo03_3.log建議:不不指定大大小。新新成員的的大小是是由組中中現(xiàn)有成成員的大大小決定定的。Select*from v$logfile;新成員的的狀態(tài)為為INVALID,當(dāng)首次次使用日日志成員員時,該該成員變變?yōu)榛顒觿拥?。在MOUNT狀態(tài)下移移動重做做日志文文件:關(guān)閉數(shù)據(jù)據(jù)庫,啟啟動到mount移動重做做日志文文件Alterdatabaserenamefile語句將數(shù)據(jù)庫庫啟動到到OPEN狀態(tài)備份控制制文件或或數(shù)據(jù)庫庫。10.5.3移動重做做日志文文件10.5.4刪除日志志組及成成員當(dāng)日志成成員損壞壞或者丟丟失時,應(yīng)該刪刪除該日日志成員員。當(dāng)日日志組大大小不合合適時,需要重重新建立立日志組組,并刪刪除原來來的日志志組。刪刪除重做做日志是是使用alterdatabase語句完成成的,執(zhí)執(zhí)行該語語句時要要求用戶戶具有alterdatabase系統(tǒng)權(quán)限限。1.刪除日志志成員ALTERDATABASEDROP LOGFILEMEMBER D:redo02_2.log ;日志組1日志組2redo01_1.logRedo01_2.logRed
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)院科室托管協(xié)議書
- 婚內(nèi)自律忠誠協(xié)議書
- 電腦用戶使用協(xié)議書
- 廠房裝修管理協(xié)議書
- 版權(quán)免責(zé)協(xié)議書模板
- 訂立征收補(bǔ)償協(xié)議書
- 刀具購銷協(xié)議書范本
- 白酒陳列協(xié)議書模板
- 茶場意向投資協(xié)議書
- 超市對外供貨協(xié)議書
- 醫(yī)療物聯(lián)網(wǎng)行業(yè)市場調(diào)研分析報告
- 《保密法》培訓(xùn)課件
- 【青島海爾公司基于杜邦分析的盈利能力淺析(14000字論文)】
- DB11T 1424-2017 信息化項(xiàng)目軟件運(yùn)維費(fèi)用測算規(guī)范
- 膾炙人口的歌-小城故事 課件 2024-2025學(xué)年粵教花城版(簡譜)(2024)初中音樂七年級上冊
- 廣告設(shè)計(jì)師三級理論知識鑒定要素細(xì)目表
- 2024年二手設(shè)備買賣合同參考樣本(二篇)
- 抗旱報告申請書
- 粵教版四年級勞動與技術(shù) 第二單元 小泥巴變變變 活動2 泥塑杯子 教案
- 2024-2030年中國駱駝奶制造市場銷售格局與發(fā)展趨勢前景分析研究報告
- 2024年實(shí)驗(yàn)室保密規(guī)定
評論
0/150
提交評論