版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第8章邏輯存儲結構本章內容8.1項目導入——規(guī)劃人力資源管理系統(tǒng)數據庫邏輯存儲結構8.2邏輯存儲結構概述8.3表空間8.4數據塊8.5區(qū)8.6段本章要求掌握Oracle數據庫邏輯結構組成掌握表空間的作用及其管理掌握擴展區(qū)的結構,了解擴展區(qū)的管理掌握段的作用,了解段的管理8.1項目導入——規(guī)劃人力資源管理系統(tǒng)數據庫邏輯存儲結構創(chuàng)建永久性表空間ORCLTBS1、ORCLTBS2、ORCLTBS3、ORCLTBS4、ORCLTBS5創(chuàng)建一個索引表空間INDX。創(chuàng)建ORCLTEMP1和ORCLTEMP2兩個臨時表空間,并組成TEMP_GROUP臨時表空間組。創(chuàng)建撤銷表空間ORCLUNDO1。合理規(guī)劃表空間的存儲設置。8.2邏輯存儲結構概述概念邏輯存儲結構是從邏輯的角度來分析數據庫的構成的,是數據庫創(chuàng)建后利用邏輯概念來描述Oracle數據庫內部數據的組織和管理形式。在操作系統(tǒng)中,沒有數據庫邏輯存儲結構信息,而只有物理存儲結構信息。數據庫的邏輯存儲結構概念存儲在數據庫的數據字典中,可以通過數據字典查詢邏輯存儲結構信息。邏輯結構單元類型數據塊:BLOCK區(qū):EXTENT段:SEGMENT表空間:TABLESPACE數據庫的存儲層次關系DatabaseLogicalPhysicalTablespaceDatafileOSblockOracle
blockSegmentExtent數據庫邏輯存儲結構之間的關系表空間數據段………區(qū)間數據塊(段片)8.3表空間表空間概述表空間的管理8.3.1表空間概述表空間的概念表空間的分類表空間的管理方式表空間的管理策略(1)表空間概念Oracle數據庫在邏輯上可以劃分為一系列的邏輯空間,每一個邏輯空間就可以稱為一個表空間。一個數據庫由有一個或多個表空間構成,不同表空間用于存放不同應用的數據,表空間大小決定了數據庫的大小。一個表空間對應一個或多個數據文件,數據文件大小決定了表空間的大小。一個數據文件只能從屬于一個表空間。表空間是存儲模式對象的容器,一個數據庫對象只能存儲在一個表空間中(分區(qū)表和分區(qū)索引除外),但可以存儲在該表空間所對應的一個或多個數據文件中。若表空間只有一個數據文件,則該表空間中所有對象都保存在該文件中;若表空間對應多個數據文件,則表空間中的對象可以分布于不同的數據文件中。數據庫、表表空間、數數據文件、、數據庫對對象之間的的關系(2)表空空間的分類類系統(tǒng)表空間間SYSTEM表空空間,主要要存儲:數據庫的數數據字典;;PL/SQL程序的的源代碼和和解釋代碼碼,包括存存儲過程、、函數、包包、觸發(fā)器器等;數據庫對象象的定義,,如表、視視圖、序列列、同義詞詞等。SYSAUX表空間間SYSAUX表空間間是Oracle10g新新增的輔助助系統(tǒng)表空空間,主要要用于存儲儲數據庫組組件等信息息,以減小小SYSTEM表空空間的負荷荷。在通常情況況下,不允允許刪除、、重命名及及傳輸SYSAUX表空間。。非系統(tǒng)表空空間撤銷表空間間專門進行回回滾信息的的自動管理理,由UNDO_TABLESPACE參參數設置。臨時表空間間專門進行臨臨時數據管管理的表空空間在數據庫實實例運行過過程中,執(zhí)執(zhí)行排序等等SQL語語句時會產產生大量的的臨時數據據,這些臨臨時數據將將保存在數數據庫臨時時表空間中中。默認臨時表表空間用戶表空間間保存用戶數數據大文件表空空間與小文文件表空間間所謂大文件件表空間((BigfileTablespace)是是指一個表表空間只包包含一個大大數據文件件,該文件件的最大尺尺寸為128TB(數據塊塊大小為32KB)或只32TB(數據塊塊大小為8KB))。與大文件表表空間相對對應,系統(tǒng)統(tǒng)默認創(chuàng)建建的表空間間稱為小文文件表空間間(SmallfileTablespace),如如SYSTEM表空空間、SYSAUX表空間等等。小文件件表空間可可以包含多多達1024個數據據文件。小小文件表空空間的總容容量與大文文件表空間間的容量基基本相似。。(3)表空空間的管理理方式字典管理方方式表空間使用用數據字典典來管理存存儲空間的的分配,當當進行區(qū)的的分配與回回收時,Oracle將對數數據字典中中的相關基基礎表進行行更新,同同時會產生生回滾信息息和重做信信息。字典典管理方式式將漸漸被被淘汰。本地管理方方式在本地管理理方式中,,區(qū)的分配配和管理信信息都存儲儲在表空間間的數據文文件中,而而與數據字字典無關。。表空間在在每個數據據文件中維維護一個““位圖”結結構,用于于記錄表空空間中所有有區(qū)的分配配情況,因因此區(qū)在分分配與回收收時,Oracle將對數據據文件中的的位圖進行行更新,不不會產生回回滾信息或或重做信息息。表空間本地地管理方式式的優(yōu)勢::由于在區(qū)分分配與回收收過程中不不需要對數數據字典進進行訪問,,提高了表表空間存儲儲管理操作作的速度和和并發(fā)性。。能夠避免表表空間存儲儲管理操作作中的遞歸歸現(xiàn)象,提提高了存儲儲空間管理理操作性能能。由于本地管管理的臨時時表空間在在使用過程程中不會產產生任何重重做信息和和撤銷信息息,因此既既使查詢操操作中包含含排序,對對數據庫來來說也完全全是只讀操操作,這樣樣能夠在保保留可查詢詢性同時,,將整個數數據庫設置置為只讀狀狀態(tài)。這種種數據庫可可以作為備備用數據庫庫使用。簡化了表空空間的存儲儲管理,由由Oracle自動動完成存儲儲管理操作作。降低了用戶戶對數據字字典的依賴賴性。不存在磁盤盤碎片問題題,因為必必要的信息息都存儲在在數據文件件的位圖中中,而不是是保存在數數據字典中中(4)表空空間管理策策略將數據字典典與用戶數數據分離,,避免由于于數據字典典對象和用用戶對象保保存在一個個數據文件件中而產生生I/O沖沖突。將回滾數據據與用戶數數據分離,,避免由于于硬盤損壞壞而導致永永久性的數數據丟失。。將表空間的的數據文件件分散保存存到不同的的硬盤上,,平均分布布物理I/O操作。。為不同的應應用創(chuàng)建獨獨立的表空空間,避免免多個應用用之間的相相互干擾。。能夠將表空空間設置為為脫機狀態(tài)態(tài)或聯(lián)機狀狀態(tài),以便便對數據庫庫的一部分分進行備份份或恢復。。能夠將表空空間設置為為只讀狀態(tài)態(tài),從而將將數據庫的的一部分設設置為只讀讀狀態(tài)。能夠為某種種特殊用途途專門設置置一個表空空間,如臨臨時表空間間,優(yōu)化表表空間的使使用效率。。能夠更加靈靈活地為用用戶設置表表空間配額額。8.3.2表空間的的管理(本本地管理方方式)創(chuàng)建表空間間修改表空間間表空間的備備份刪除表空間間大文件表空空間的管理理表空間信息息查詢利用OEM管理表空空間(1)創(chuàng)建建表空間在創(chuàng)建本地地管理方式式下的表空空間時,應應該確定表表空間的名名稱、類型型、對應的的數據文件件的名稱和和位置以及及區(qū)的分配配方式、段段的管理方方式表空間名稱稱不能超過過30個字字符,必須須以字母開開頭,可以以包含字母母、數字以以及一些特特殊字符((如#、_、$)等等;表空間的類類型包括普普通表空間間、臨時表表空間和撤撤銷表空間間;表空間中區(qū)區(qū)的分配方方式包括兩兩種方式::自動擴展展(AUTOALLOCATE)和定定制(UNIFORM);段的管理包包括兩種方方式:自動動管理(AUTO))和手動管管理(MANUAL)。創(chuàng)建永久表表空間創(chuàng)建永久表表空間使用用CREATETABLESPACE語句來來實現(xiàn),該該語句包含含以下幾個個子句:DATAFILE::設定表空空間對應的的數據文件件。EXTENTMANAGEMENT:指定表表空間的管管理方式,,取值為LOCAL(默認))或DICTIONARY。。AUTOALLOCATE((默認)或或UNIFORM::設定區(qū)的的分配方式式。SEGMENTSPACEMANAGEMENT::設定段的的管理方式式,其取值值為MANUAL或或AUTO(默認認)。為ORCL數據庫創(chuàng)創(chuàng)建一個永永久性的表表空間,區(qū)區(qū)自動擴展展,段采用用手動管理理方式CREATETABLESPACEORCLTBS1DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_1.DBF'SIZE50M;為ORCL數數據庫創(chuàng)建一一個永久性的的表空間,區(qū)區(qū)定制分配,,段采用自動動管理方式。。CREATETABLESPACEORCLTBS2DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS2_1.DBF'SIZE50MEXTENTMANAGEMENTLOCALUNIFORMSIZE512K;為ORCL數數據庫創(chuàng)建一一個永久性的的表空間,區(qū)區(qū)自動擴展,,段采用手動動管理方式。。CREATETABLESPACEORCLTBS3DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS3_1.DBF'SIZE50MSEGMENTSPACEMANAGEMENTMANUAL;為ORCL數數據庫創(chuàng)建一一個永久性的的表空間,區(qū)區(qū)定制分配,,段采用手動動管理方式。。CREATETABLESPACEORCLTBS4DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS4_1.DBF'SIZE50MEXTENTMANAGEMENTLOCALUNIFORMSIZE512KSEGMENTSPACEMANAGEMENTMANUAL;為ORCL數數據庫創(chuàng)建一一個永久性的的表空間INDX,區(qū)自自動擴展,段段采用自動管管理方式,專專門用于存儲儲ORCL數數據庫中的索索引數據。CREATETABLESPACEINDXDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\INDEX01.DBF'SIZE50M;創(chuàng)建臨時表空空間使用CREATETEMPORARYTABLESPACE語語句創(chuàng)建臨時時表空間,用用TEMPFILE子句句設置臨時數數據文件。需要注意的是是臨時表空間間中區(qū)的分配配方式只能是是UNIFORM,而不不能是AUTOALLOCATE,,因為這樣才才能保證不會會在臨時段中中產生過多的的存儲碎片。。為ORCL數數據庫創(chuàng)建一一個臨時表空空間ORCLTEMP1。CREATETEMPORARYTABLESPACEORCLTEMP1TEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTEMP1_1.DBF'SIZE20MEXTENTMANAGEMENTLOCALUNIFORMSIZE16M;臨時表空間組組將一個或多個個臨時表空間間構成一個表表空間組。當當將臨時表空空間組作為數數據庫或用戶戶的默認臨時時表空間時,,用戶就可以以同時使用該該表空間組中中所有的臨時時表空間,避避免了由于單單個臨時表空空間的空間不不足而導致數數據庫運行故故障。同時,,使用臨時表表空間組,可可以保證在一一個簡單并行行操作中多個個并行服務的的執(zhí)行。臨時表空間組組不需要顯式式創(chuàng)建,為臨臨時表空間組組指定第一個個臨時表空間間時隱式創(chuàng)建建,當臨時表表空間組中最最后一個臨時時表空間刪除除時而隱式地地刪除。通過在CREATETEMPORARYTABLSPACE或ALTERTABLESPACE語句中使用用TABLESPACEGROUP短語創(chuàng)建建臨時表空間間組。為ORCL數數據庫創(chuàng)建一一個臨時表空空間ORCLTEMP2,并放入臨臨時表空間組組temp_group1。同時,,將臨時表空空間ORCLTEMP1也放入該temp_group1中。CREATETEMPORARYTABLESPACEORCLTEMP2TEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTEMP2_1.DBF'SIZE20MEXTENTMANAGEMENTLOCALUNIFORMSIZE16MTABLESPACEGROUPtemp_group1;ALTERTABLESPACEORCLTEMP1TABLESPACEGROUPtemp_group1;創(chuàng)建撤銷表空空間在Oracle10g中引入了撤撤銷表空間的的概念,專門門用于回滾段段的自動管理理。如果數據據庫中沒有創(chuàng)創(chuàng)建撤銷表空空間,那么將將使用SYSTEM表空空間來管理回回滾段。如果數據庫中中包含多個撤撤銷表空間,,那么一個實實例只能使用用一個處于活活動狀態(tài)的撤撤銷表空間,,可以通過參參數UNDO_TABLESPACE來指定;;如果數據庫庫中只包含一一個撤銷表空空間,那么數數據庫實例啟啟動后會自動動使用該撤銷銷表空間。如果要使用撤撤銷表空間對對數據庫回滾滾信息進行自自動管理,則則必須將初始始化參數UNDO_MANAGEMENT=AUTO??梢允褂肅REATEUNDOTABLESPACE語句創(chuàng)建撤撤銷表空間,,但是在該語語句中只能指指定DATAFILE和和EXTENTMANAGEMENTLOCAL兩個個子句,而不不能指定其他他子句。為ORCL數數據庫創(chuàng)建一一個撤銷表空空間。CREATEUNDOTABLESPACEORCLUNDO1DATAFILE'D:\ORACLE\ORADATA\ORCL\ORCLUNDO1_1.DBF'SIZE20M;如果要在數據據庫使用該撤撤銷表空間,,需要設置參參數UNDO_MANAGEMENT=AUTOUNDO_TABLESPACE=ORCLUNDO1(2)修改表表空間可以對表空間間進行下列修修改操作:擴展表空間修改表空間可可用性修改表空間讀讀/寫性設置默認表空空間表空間重命名名注意不能將本地管管理的永久性性表空間轉換換為本地管理理的臨時表空空間,也不能能修改本地管管理表空間中中段的管理方方式。擴展表空間為表空間添加加數據文件通過ALTERTABLESPACE…ADDDATAFILE語句為永久久表空間添加加數據文件,,通過ALTERTABLESPACE…ADDTEMPFILE語句為為臨時表空間間添加臨時數數據文件。為ORCL數數據庫的ORCLTBS1表空間添添加一個大小小為10MB的新數據據文件。ALTERTABLESPACEORCLTBS1ADDDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'SIZE10M;為ORCL數數據庫的ORCLTEMP1表空間間添加一個大大小為10MB的臨時時數據文件。。ALTERTABLESPACEORCLTEMP1ADDTEMPFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTEMP1_2.DBF'SIZE20M;;改變數據文件件的大小可以通過改變變表空間已有有數據文件的的大小,達到到擴展表空間間的目的。將ORCL數數據庫的ORCLTBS1表空間的的數據文件ORCLTBS1_2.DBF大小小增加到20MB。ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'RESIZE20M;改變數據文件件的擴展方式式如果在創(chuàng)建表表空間或為表表空間增加數數據文件時沒沒有指定AUTOEXTENDON選項,則則該文件的大大小是固定的的。如果為數數據文件指定定了AUTOEXTENDON選選項,當數據據文件被填滿滿時,數據文文件會自動擴擴展,即表空空間被擴展了了。將ORCL數數據庫的ORCLTBS1表空間的的數據文件ORCLTBS1_2.DBF設置置為自動擴展展,每次擴展展5MB空空間,文件最最大為100MB。ALTERDATABASEDATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'AUTOEXTENDONNEXT5MMAXSIZE100M;修改表空間可可用性離線狀態(tài)的表表空間是不能能進行數據訪訪問的,所對對應的所有數數據文件也都都處于脫機狀狀態(tài)。一些表空間必必須是在線狀狀態(tài):SYSTEM表空間存放在線回退退信息的撤銷銷表空間臨時表空間語法ALTERTABLESPACEtablespace_nameONLINE|OFFLINE示例ALTERTABLESPACEORCLTBS1OFFLINE;ALTERTABLESPACEORCLTBS1ONLINE;修改表空間讀讀寫性語法ALTERTABLESPACEtbs_nameREADONLY|READWRITE表空間只有滿滿足下列要求求才可以轉換換為只讀狀態(tài)態(tài):表空間處于聯(lián)聯(lián)機狀態(tài);表空間中不能能包含任何活活動的回退段段;如果表空間正正在進行聯(lián)機機數據庫備份份,不能將它它設置為只讀讀狀態(tài)。因為為聯(lián)機備份結結束時,Oracle更更新表空間數數據文件的頭頭部信息。示例ALTERTABLESPACEORCLTBS1READONLY;ALTERTABLESPACEORCLTBS1READWRITE設置默認表空空間在Oracle10g數數據庫中,默默認表空間為為USERS表空間,默默認臨時表空空間為TEMP表空間。。設置數據庫的的默認表空間間ALTERDATABASEDEFAULTTABLESPACE設置數據庫的的默認臨時表表空間ALTERDATABASEDEFAULTTEMPORARYTABLESPACE示例ALTERDATABASEDEFAULTTABLESPACEORCLTBS1;ALTERDATABASEDEFAULTTEMPORARYTABLESPACETEMP;ALTERDATABASEDEFAULTTEMPORARYTABLESPACEtemp_group1;表空間重命名名語句ALTERTABLESPACE…RENAMETO當重命名一個個表空間時數數據庫會自動動更新數據字字典、控制文文件以及數據據文件頭部中中對該表空間間的引用。在在重命名表空空間時,該表表空間ID號號并沒有修改改,如果該表表空間是數據據庫默認表空空間,那么重重命名后仍然然是數據庫的的默認表空間間。注意不能重命名SYSTEM表空間和SYSAUX表空間不能重命名處處于脫機狀態(tài)態(tài)或部分數據據文件處于脫脫機狀態(tài)的表表空間。(3)表空間間的備份語法ALTERTABLESPACEtablespace_nameBEGIN|ENDBACKUP在數據庫進行行熱備份(聯(lián)聯(lián)機備份)時時,需要分別別對表空間進進行備份?;静襟E為::使用ALTERTABLESPACE…BEGINBACKUP語句將表空空間設置為備備份模式。在操作系統(tǒng)中中備份表空間間所對應的數數據文件。使用ALTERTABLESPACE…ENDBACKUP語句句結束表空間間的備份模式式。示例:備份ORCL數據據庫的ORCLTBS1表空間。ALTERTABLESPACEORCLTBS1BEGINBACKUP;復制ORCLTBS1表表空間的數據據文件ORCLTBS1_1.DBF和ORCLTBS1_2.DBF到目標位位置。ALTERTABLESPACEORCLTBS1ENDBACKUP;(4)刪除表表空間語法DROPTABLESPACEtablespace_name如果表空間非非空,應帶有有子句INCLUDINGCONTENTS若要刪除操作作系統(tǒng)下的數數據文件,應應帶有子句ANDDATAFILES刪除參照完整整性約束,應應帶有子句CASCADECONSTRAINTS刪除ORCL數據庫的ORCLTBS1表空間間及其所有內內容。DROPTABLESPACEORCLTBS1INCLUDINGCONTENTS;刪除ORCL數據庫的ORCLUNDO1表空空間及其所有有內容,同時時刪除其所對對應的數據文文件。DROPTABLESPACEORCLUNDO1INCLUDINGCONTENTSANDDATAFILES;刪除ORCL數據庫的ORCLUNDO1表空空間及其所有有內容,同時時刪除其所對對應的數據文文件,以及其其他表空間中中與ORCLUNDO1表空間相關關的參照完整整性約束。DROPTABLESPACEORCLUNDO1INCLUDINGCONTENTSANDDATAFILESCASCADECONSTRAINTS;(5))大文文件表表空間間的管管理概念大文件件表空空間只只包含含一個個數據據文件件,減減少數數據庫庫中數數據文文件的的數量量,減減少SGA中用用于存存放數數據文文件信信息的的內存存需求求,同同時減減小控控制文文件。。通過對對大文文件表表空間間的操操作可可以實實現(xiàn)對對數據據文件件的透透明操操作,,簡化化了對對數據據文件件的管管理。。大文件件表空空間只只能采采用本本地管管理方方式,,其段段采用用自動動管理理方式式。如果在在數據據庫創(chuàng)創(chuàng)建時時設置置系統(tǒng)統(tǒng)默認認的表表空間間類型型為BIGFILE,則則使用用CREATETABLESPACE語語句默默認創(chuàng)創(chuàng)建的的就是是大文文件表表空間間。如如果要要創(chuàng)建建傳統(tǒng)統(tǒng)的小小文件件表空空間,,則需需要使使用CREATESMALLFILETABLESPACE語句句。創(chuàng)建大大文件件表空空間的的語句句CREATEBIGFILETABLESPACE示例::創(chuàng)建建一個個大文文件表表空間間ORCLTBS5。CREATEBIGFILETABLESPACEORCLTBS5DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS5_1.DBF'SIZE20M;大文件件表空空間的的操作作將大文文件表表空間間ORCLTBS5的數數據文文件D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS5_1.DBF大大小小修改改為30MB。ALTERTABLESPACEORCLTBS5RESIZE30M;將大文文件表表空間間ORCLTBS5的數數據文文件D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS5_1.DBF修修改為為可以以自動動擴展展。ALTERTABLESPACEORCLTBS5AUTOEXTENDONNEXT10MMAXSIZEUNLIMITED;(6))表空空間信信息查查詢V$TABLESPACE::從控控制文文件中中獲取取的表表空間間名稱稱和編編號信信息。。DBA_TABLESPACES:數數據庫庫中所所有表表空間間的信信息。。DBA_TABLESPACE_GROUPS:表表空間間組及及其包包含的的表空空間信信息。。DBA_SEGMENTS::所有有表空空間中中段的的信息息。DBA_EXTENTS:所所有表表空間間中區(qū)區(qū)的信信息。。DBA_FREE_SPACE::所有有表空空間中中空閑閑區(qū)的的信息息。V$DATAFILE::所有有數據據文件件信息息,包包括所所屬表表空間間的名名稱和和編號號。V$TEMPFILE::所有有臨時時文件件信息息,包包括所所屬表表空間間的名名稱和和編號號。DBA_DATA_FILES::數據據文件件及其其所屬屬表空空間信信息。。DBA_TEMP_FILES::臨時時文件件及其其所屬屬表空空間信信息。。DBA_USERS:所所有用用戶的的默認認表空空間和和臨時時表空空間信信息。。DBA_TS_QUOTAS:所所有用用戶的的表空空間配配額信信息。。V$SORT_SEGMENT::數據據庫實實例的的每個個排序序段信信息。。V$SORT_USER:用用戶使使用臨臨時排排序段段信息息。查詢表表空間間基本本信息息SELECTTABLESPACE_NAME,EXTENT_MANAGEMENT,ALLOCATION_TYPE,CONTENTSFROMDBA_TABLESPACES;查詢表表空間間數據據文件件信息息SELECTFILE_NAME,BLOCKS,TABLESPACE_NAMEFROMDBA_DATA_FILES;查詢表表空間間空閑閑空間間大小小SELECTTABLESPACE_NAME,SUM(BYTES)FREE_SPACESFROMDBA_FREE_SPACEGROUPBYTABLESPACE_NAME;統(tǒng)計表表空間間空閑閑空間間信息息SELECTTABLESPACE_NAME"TABLESPACE",FILE_ID,COUNT(*)"PIECES",MAX(blocks)"MAXIMUM",MIN(blocks)"MINIMUM",AVG(blocks)"AVERAGE",SUM(blocks)"TOTAL"FROMDBA_FREE_SPACEGROUPBYTABLESPACE_NAME,FILE_ID;(8))利用用OEM管管理表表空間間創(chuàng)建表表空間間編輯表表空間間查看表表空間間信息息刪除表表空間間臨時表表空間間組的的管理理8.4數數據據塊塊((BLOCK))數據據塊塊的的概概念念數據據塊塊結結構構數據據塊塊的的管管理理(1))數數據據塊塊的的概概念念最小小的的I/O單單元元包括括一一個個或或者者多多個個OSBLOCK在數數據據庫庫創(chuàng)創(chuàng)建建時時設設置置,,不不可可更更改改分為為標標準準塊塊和和非非標標準準塊塊DB_BLOCK_SIZE參參數數設設置置標標準準塊塊大大小?。?))數數據據庫庫塊塊結結構構HeaderFreespaceData塊頭頭部部包包括括標標題題、、表表目目錄錄、、行行目目錄錄三三部部分分。。標題題包包含含塊塊的的一一般般屬屬性性信信息息,,如如塊塊的的物物理理地地址址、、塊塊所所屬屬段段的的類類型型等等;;表目目錄錄包包含含數數據據塊塊中中保保存存的的表表的的信信息息;;行目目錄錄包包含含數數據據塊塊中中的的行行地地址址等等信信息息。。存儲儲區(qū)區(qū)包包括括行行數數據據區(qū)區(qū)和和空空閑閑區(qū)區(qū)兩兩部部分分。。行數數據據區(qū)區(qū)是是已已經經使使用用的的空空間間,,保保存存數數據據庫庫的的對對象象數數據據;;空閑閑區(qū)區(qū)是是尚尚未未使使用用的的存存儲儲空空間間,,用用于于存存放放新新的的行行或或用用來來更更新新已已存存在在的的行行。。(3))數數據據塊塊的的管管理理對塊塊的的管管理理主主要要是是對對塊塊中中可可用用存存儲儲空空間間的的管管理理,,確確定定保保留留多多少少空空閑閑空空間間,,避避免免產產生生行行鏈鏈接接、、行行遷遷移移而而影影響響數數據據的的查查詢詢效效率率。。當向向表表格格中中插插入入數數據據時時,,如如果果行行的的長長度度大大于于塊塊的的大大小小,,行行的的信信息息無無法法存存放放在在一一個個塊塊中中,,就就需需要要使使用用多多個個塊塊存存放放行行信信息息,,這這稱稱為為行行鏈鏈接接。。當表表格格數數據據被被更更新新時時,,如如果果更更新新后后的的數數據據長長度度大大于于塊塊長長度度,,Oracle會會將將整整行行的的數數據據從從原原數數據據塊塊遷遷移移到到新新的的數數據據塊塊中中,,只只在在原原數數據據塊塊中中留留下下一一個個指指針針指指向向新新數數據據塊塊,,這這稱稱為為行行遷遷移移。。對塊塊的的管管理理分分為為自自動動和和手手動動兩兩種種。。如果果建建立立表表空空間間時時使使用用本本地地管管理理方方式式,,并并且且將將段段的的管管理理方方式式設設置置為為AUTO,,則則采采用用自自動動方方式式管管理理塊塊。。否否則則,,DBA可可以以采采用用手手動動管管理理方方式式,,通通過過為為段段設設置置PCTFREE和和PCTUSED兩兩個個參參數數來來控控制制數數據據塊塊中中空空閑閑空空間間的的使使用用。。PCTFREEPCTFREE參參數數指指定定塊塊中中必必須須保保留留的的最最小小空空閑閑空空間間比比例例。。當當數數據據塊塊的的自自由由空空間間百百分分率率低低于于PCTFREE時時,,此此數數據據塊塊被被標標志志為為USED,,此此時時在在數數據據塊塊中中只只可可以以進進行行更更新新操操作作,,而而不不可可以以進進行行插插入入操操作作。。該該參參數數默默認認為為10。。PCTUSEDPCTUSED參參數數指指定定可可以以向向塊塊中中插插入入數數據據時時塊塊已已使使用用的的最最大大空空間間比比列列。。當當數數據據塊塊使使用用空空間間低低于于PCTUSED時時,,此此塊塊標標志志為為FREE,,可可以以對對數數據據塊塊中中數數據據進進行行插插入入操操作作;;反反之之,,如如果果使使用用空空間間高高于于PCTUSED,,則則不不可可以以進進行行插插入入操操作作。。該該參參數數默默認認為為10。。INITRANS可以同時時對此數數據塊進進行DML操作作的事務務的個數數。MAXTRANS可以同時時對此數數據塊進進行DML操作作的最多多事務的的個數。。80%80%40%Inserts1234InsertsPCTFREE=20PCTUSED=40Insert(onfreelist)Inserts(offfreelist)8.5區(qū)區(qū)區(qū)的概念念區(qū)的管理理(1)區(qū)區(qū)的概念念區(qū)是由一一系列連連續(xù)的數數據塊構構成的邏邏輯存儲儲單元,,是存儲儲空間分分配與回回收的最最小單位位。當創(chuàng)創(chuàng)建一個個數據庫庫對象時時,Oracle為對對象分配配若干個個區(qū),以以構成一一個段來來為對象象提供初初始的存存儲空間間。當段段中已分分配的區(qū)區(qū)都寫滿滿后,Oracle會會為段分分配一個個新區(qū),,以容納納更多的的數據。。(2)區(qū)區(qū)的管理理區(qū)的分配配在本地管管理方式式的表空空間中,,自動進進行區(qū)的的分配。??梢酝ㄍㄟ^使用用UNIFORM選項項,指定定所有段段的初始始區(qū)和后后續(xù)區(qū)具具有統(tǒng)一一大小,,也可以以使用AUTOALLOCATE選選項指定定由Oracle自動動決定后后續(xù)區(qū)大大小。用用戶不能能通過其其他參數數來干預預區(qū)的分分配。在字典管管理方式式的表空空間中,,創(chuàng)建表表空間時時可以使使用DEFAULTSTORAGE子句句設置存存儲參數數,也可可以在該該表空間間定義對對象時通通過STORAGE子子句設置置存儲參參數。如如果在定定義對象象時沒有有設置存存儲參數數,則繼繼承表空空間存儲儲參數的的設置。。創(chuàng)建一個個本地管管理方式式的表空空間,區(qū)區(qū)分配采采用自動動擴展方方式進行行。CREATETABLESPACEORCLTBS6DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS6_1.DBF'SIZE20MEXTENTMANAGEMENTLOCALAUTOALLOCATE;創(chuàng)建一個個本地管管理方式式的表空空間,區(qū)區(qū)分配采采用固定定大小,,每個區(qū)區(qū)5MB。CREATETABLESPACEORCLTBS8DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS8_1.DBF'SIZE10MEXTENTMANAGEMENTLOCALUNIFORMSIZE5M;區(qū)的回收收通常分配配給段的的區(qū)將一一直保留留在段中中,不論論區(qū)中的的數據塊塊是否被被使用。。只有當當段所屬屬的對象象被刪除除時,段段中所有有的區(qū)才才會被回回收。此此外,在在一些特特殊情況況下,也也能夠回回收未使使用的區(qū)區(qū)。例如如,如果果在創(chuàng)建建回滾段段時指定定了OPTIMAL關關鍵字,,Oracle會定期期回收回回滾段中中未使用用的區(qū)。。8.6段段段概述回滾段段段概述段的概述述段是由一一個或多多個擴展展區(qū)組成成的邏輯輯存儲單單元。數據庫模模式對象象在邏輯輯上是以以段來占占據表空空間的大大小。段代表特特定數據據類型的的數據存存儲結構構。段的類型型:數據段索引段臨時段回滾段數據段數據段用用來存儲儲表或簇簇的數據據,可以以細分為為表數據據段、索索引表數數據段、、分區(qū)表表數據段段及簇數數據段四四種。索引段用來存放放索引信信息,主主要包括括存儲ROWID和索索引鍵。。索引段與與其相應應的表段段經常會會被同時時訪問,,為了減減少硬盤盤訪問的的沖突,,索引段段與表段段可以放放到處于于不同物物理位置置的表空空間中。。臨時段當用戶進進行排序序查詢時時,如果果在指定定的內存存無法完完成排序序,Oracle將自自動從用用戶默認認的臨時時表空間間中指派派臨時段段進行排排序。會會話結束束,數據據將從臨臨時段中中自動刪刪除。回滾段回滾段用用于保存存數據庫庫的回滾滾信息,,包含當當前未提提交事務務所修改改的數據據的原始始版本。。一個事務務只能使使用一個個回滾段段存放它它的回滾滾信息,,但是一一個回滾滾段可以以存放多多個事務務的回滾滾信息。?;貪L段段可以動動態(tài)創(chuàng)建建和撤銷銷。TableClusterTablepartitionIndex-organizedtableIndexpartitionUndosegmentTemporarysegmentIndex回回滾段回滾段的工作方式回滾段的作用用回滾段的種類類回滾段的管理理回滾段的查詢詢(1)回滾段段的工作方式回滾段采用循循環(huán)寫的方式式進行寫入。。當回滾段中中最后一個區(qū)區(qū)寫滿時,Oracle將覆蓋寫入回回滾段的第一一個區(qū),如果果此時第一個個區(qū)保存得回回滾條目所對對應的事務依依然處于活動動狀態(tài)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生態(tài)修復技術
- 生物多樣性保護
- 2026江西宜春市人力資源服務有限責任公司(宜春旅游集團)招聘3人備考題庫及參考答案詳解1套
- 2025江蘇鹽城市交通運輸局直屬事業(yè)單位選調1人備考題庫及答案詳解(易錯題)
- 2026廣東深圳市眼科醫(yī)院招聘14人備考題庫附答案詳解
- 2026中共海南省委黨校(省行政學院 省社會主義學院)考核招聘高層次人才13人備考題庫帶答案詳解
- 2026浙江臺州市公路與運輸管理中心招聘編制外合同工1人備考題庫及完整答案詳解1套
- 2026云南臨滄市臨翔區(qū)政務服務管理局面向社會招聘城鎮(zhèn)公益性崗位1人備考題庫及參考答案詳解一套
- 2026山東濟南市高新區(qū)某政府單位招聘綜合窗口崗實習生2人備考題庫及一套完整答案詳解
- 2025北京市海淀區(qū)成志幼兒園招聘3人備考題庫及一套參考答案詳解
- 一圖看清37家公司經營模式:財務報表桑基圖(2025年6月版)(英)
- 如何做好一名護理帶教老師
- 房地產項目回款策略與現(xiàn)金流管理
- 花溪區(qū)高坡苗族鄉(xiāng)國土空間總體規(guī)劃 (2021-2035)
- 非連續(xù)性文本閱讀(中考試題20篇)-2024年中考語文重難點復習攻略(解析版)
- 專題13 三角函數中的最值模型之胡不歸模型(原卷版)
- 門診藥房西藥管理制度
- 新能源汽車生產代工合同
- 2025年中煤科工集團重慶研究院有限公司招聘筆試參考題庫含答案解析
- 消防救援預防職務犯罪
- 一體化泵站安裝施工方案
評論
0/150
提交評論