第6章邏輯存儲結(jié)構(gòu)_第1頁
第6章邏輯存儲結(jié)構(gòu)_第2頁
第6章邏輯存儲結(jié)構(gòu)_第3頁
第6章邏輯存儲結(jié)構(gòu)_第4頁
第6章邏輯存儲結(jié)構(gòu)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第第6章章 邏輯存儲結(jié)構(gòu)邏輯存儲結(jié)構(gòu)2本章內(nèi)容本章內(nèi)容 Oracle邏輯存儲結(jié)構(gòu)概述 表空間 數(shù)據(jù)塊 區(qū) 段3本章要求本章要求 掌握Oracle數(shù)據(jù)庫邏輯結(jié)構(gòu)組成 掌握表空間的作用 了解數(shù)據(jù)塊 了解區(qū)的結(jié)構(gòu) 了解段46.1 邏輯存儲結(jié)構(gòu)概述邏輯存儲結(jié)構(gòu)概述 概念 邏輯存儲結(jié)構(gòu)是從邏輯的角度來分析數(shù)據(jù)庫的構(gòu)成的,是數(shù)據(jù)庫創(chuàng)建后利用邏輯概念來描述Oracle數(shù)據(jù)庫內(nèi)部數(shù)據(jù)的組織和管理形式。在操作系統(tǒng)中,沒有數(shù)據(jù)庫邏輯存儲結(jié)構(gòu)信息,而只有物理存儲結(jié)構(gòu)信息。 邏輯結(jié)構(gòu)單元類型 數(shù)據(jù)塊:BLOCK 區(qū):EXTENT 段:SEGMENT 表空間:TABLESPACE5 數(shù)據(jù)庫的存儲層次關(guān)系Database

2、LogicalPhysicalTablespaceData fileOS blockOracle blockSegmentExtent66.2表空間表空間 表空間概述 表空間的管理7表空間概念表空間概念 Oracle數(shù)據(jù)庫在邏輯上可以劃分為一系列的邏輯空間,每一個邏輯空間就可以稱為一個表空間。 一個數(shù)據(jù)庫由有一個或多個表空間構(gòu)成,不同表空間用于存放不同應(yīng)用的數(shù)據(jù),表空間大小決定了數(shù)據(jù)庫的大小。 一個表空間對應(yīng)一個或多個數(shù)據(jù)文件,數(shù)據(jù)文件大小決定了表空間的大小。一個數(shù)據(jù)文件只能從屬于一個表空間。 表空間是存儲模式對象的容器,一個數(shù)據(jù)庫對象只能存儲在一個表空間中(分區(qū)表和分區(qū)索引除外),但可以存儲

3、在該表空間所對應(yīng)的一個或多個數(shù)據(jù)文件中。若表空間只有一個數(shù)據(jù)文件,則該表空間中所有對象都保存在該文件中;若表空間對應(yīng)多個數(shù)據(jù)文件,則表空間中的對象可以分布于不同的數(shù)據(jù)文件中。8 數(shù)據(jù)庫、表空間、數(shù)據(jù)文件、數(shù)據(jù)庫對象之間的關(guān)系 數(shù)據(jù)庫 表空間 1 數(shù)據(jù)文件 1 數(shù)據(jù)庫對象 1 數(shù)據(jù)文件 2 數(shù)據(jù)庫對象 3 數(shù)據(jù)庫對象 2 表空間 2 數(shù)據(jù)文件 3 數(shù)據(jù)庫對象 4 數(shù)據(jù)文件 4 數(shù)據(jù)庫對象 5 數(shù)據(jù)庫對象 6 9表空間的分類表空間的分類 系統(tǒng)表空間 SYSTEM 表空間:系統(tǒng)創(chuàng)建數(shù)據(jù)庫時自動創(chuàng)建,用于存儲數(shù)據(jù)字典、系統(tǒng)管理信息、索引等對象。 SYSAUX表空間 :是10g新增的輔助system的表

4、空間,由系統(tǒng)內(nèi)部自動維護,不存儲用戶數(shù)據(jù)。在通常情況下,不允許刪除、重命名及傳輸SYSAUX表空間。10 非系統(tǒng)表空間 UNDOTBS1表空間:用來存儲撤銷信息,只存回滾段,不能存其他類型的段。 TEMP表空間:存儲執(zhí)行SQL語句時產(chǎn)生的臨時數(shù)據(jù)(主要排序或統(tǒng)計),一般此表空間所有用戶通用。 USERS表空間:一般主要存儲用戶數(shù)據(jù)。表空間的狀態(tài) 聯(lián)機、脫機、只讀或可讀寫。11 大文件表空間與小文件表空間 所謂大文件表空間(Bigfile Tablespace)是指一個表空間只包含一個大數(shù)據(jù)文件,該文件的最大尺寸為128 TB(數(shù)據(jù)塊大小為32 KB)或只32 TB(數(shù)據(jù)塊大小為8 KB)。與大

5、文件表空間相對應(yīng),系統(tǒng)默認創(chuàng)建的表空間稱為小文件表空間(Smallfile Tablespace),如SYSTEM表空間、SYSAUX表空間等。小文件表空間可以包含多達1024個數(shù)據(jù)文件。小文件表空間的總?cè)萘颗c大文件表空間的容量基本相似。 12表空間的管理方式表空間的管理方式字典管理方式 表空間使用數(shù)據(jù)字典來管理存儲空間的分配,當進行區(qū)的分配與回收時,Oracle將對數(shù)據(jù)字典中的相關(guān)基礎(chǔ)表進行更新,同時會產(chǎn)生回滾信息和重做信息。字典管理方式將漸漸被淘汰。本地管理方式 在本地管理方式中,區(qū)的分配和管理信息都存儲在表空間的數(shù)據(jù)文件中,而與數(shù)據(jù)字典無關(guān)。減少了對數(shù)據(jù)字典的競爭,提高空間管理的并發(fā)性,

6、支持在一個表空間里進行更多的并發(fā)操作,減少對數(shù)據(jù)字典的依賴。13創(chuàng)建表空間創(chuàng)建表空間 在創(chuàng)建本地管理方式下的表空間時,應(yīng)該確定表空間的名稱、類型、對應(yīng)的數(shù)據(jù)文件的名稱和位置以及區(qū)的分配方式、段的管理方式。 表空間名稱不能超過30個字符,必須以字母開頭,可以包含字母、數(shù)字以及一些特殊字符(如#、_、$)等; 表空間的類型包括普通表空間、臨時表空間和撤銷表空間; 表空間中區(qū)的分配方式包括兩種方式:自動擴展(AUTOALLOCATE)和定制(UNIFORM); 段的管理包括兩種方式:自動管理(AUTO)和手動管理(MANUAL)。14創(chuàng)建永久表空間創(chuàng)建永久表空間 創(chuàng)建永久表空間使用CREATE TA

7、BLESPACE語句來實現(xiàn),該語句包含以下幾個子句: DATAFILE:設(shè)定表空間對應(yīng)的數(shù)據(jù)文件。 EXTENT MANAGEMENT:指定表空間的管理方式,取值為LOCAL(默認)或DICTIONARY。 AUTOALLOCATE(默認)或UNIFORM:設(shè)定區(qū)的分配方式。 SEGMENT SPACE MANAGEMENT:設(shè)定段的管理方式,其取值為MANUAL或AUTO (默認) 。15 為ORCL數(shù)據(jù)庫創(chuàng)建一個永久性的表空間,區(qū)自動擴展,段采用自動管理方式CREATE TABLESPACE ORCLTBS1 DATAFILE D:ORACLEPRODUCT10.2.0ORADATAORC

8、LORCLTBS1_1.DBF SIZE 50M; 為ORCL數(shù)據(jù)庫創(chuàng)建一個永久性的表空間,區(qū)定制分配,段采用自動管理方式。CREATE TABLESPACE ORCLTBS2 DATAFILE D:ORACLEPRODUCT10.2.0ORADATAORCLORCLTBS2_1.DBF SIZE 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512K;16 為ORCL數(shù)據(jù)庫創(chuàng)建一個永久性的表空間,區(qū)自動擴展,段采用手動管理方式。CREATE TABLESPACE ORCLTBS3 DATAFILED:ORACLEPRODUCT10.2.0ORADATAOR

9、CLORCLTBS3_1.DBF SIZE 50M SEGMENT SPACE MANAGEMENT MANUAL; 為ORCL數(shù)據(jù)庫創(chuàng)建一個永久性的表空間,區(qū)定制分配,段采用手動管理方式。CREATE TABLESPACE ORCLTBS4 DATAFILED:ORACLEPRODUCT10.2.0ORADATAORCLORCLTBS4_1.DBF SIZE 50MEXTENT MANAGEMENT LOCAL UNIFORM SIZE 512KSEGMENT SPACE MANAGEMENT MANUAL;17創(chuàng)建臨時表空間創(chuàng)建臨時表空間 使用CREATE TEMPORARY TABLES

10、PACE 語句創(chuàng)建臨時表空間,用TEMPFILE子句設(shè)置臨時數(shù)據(jù)文件。 需要注意的是臨時表空間中區(qū)的分配方式只能是UNIFORM,而不能是AUTOALLOCATE,因為這樣才能保證不會在臨時段中產(chǎn)生過多的存儲碎片。 為ORCL數(shù)據(jù)庫創(chuàng)建一個臨時表空間ORCLTEMP1。CREATE TEMPORARY TABLESPACE ORCLTEMP1 TEMPFILE D:ORACLEPRODUCT10.2.0ORADATAORCLORCLTEMP1_1.DBF SIZE 20M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 16M;18刪除表空間刪除表空間 語法 DROP

11、 TABLESPACE tablespace_name 如果表空間非空,應(yīng)帶有子句INCLUDING CONTENTS 若要刪除操作系統(tǒng)下的數(shù)據(jù)文件,應(yīng)帶有子句AND DATAFILES 刪除參照完整性約束,應(yīng)帶有子句CASCADE CONSTRAINTS19 刪除ORCL數(shù)據(jù)庫的ORCLTBS1表空間及其所有內(nèi)容。DROP TABLESPACE ORCLTBS1 INCLUDING CONTENTS; 刪除ORCL數(shù)據(jù)庫的ORCLUNDO1表空間及其所有內(nèi)容,同時刪除其所對應(yīng)的數(shù)據(jù)文件。DROP TABLESPACE ORCLUNDO1 INCLUDING CONTENTS AND DATA

12、FILES; 刪除ORCL數(shù)據(jù)庫的ORCLUNDO1表空間及其所有內(nèi)容,同時刪除其所對應(yīng)的數(shù)據(jù)文件,以及其他表空間中與ORCLUNDO1表空間相關(guān)的參照完整性約束。DROP TABLESPACE ORCLUNDO1 INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS; 20 表空間信息查詢表空間信息查詢 V$TABLESPACE:從控制文件中獲取的表空間名稱和編號信息。 DBA_TABLESPACES:數(shù)據(jù)庫中所有表空間的信息。 DBA_TABLESPACE_GROUPS:表空間組及其包含的表空間信息。 DBA_SEGMENTS:所有表空間

13、中段的信息。 DBA_EXTENTS:所有表空間中區(qū)的信息。 DBA_FREE_SPACE:所有表空間中空閑區(qū)的信息。 V$DATAFILE:所有數(shù)據(jù)文件信息,包括所屬表空間的名稱和編號。 V$TEMPFILE:所有臨時文件信息,包括所屬表空間的名稱和編號。 DBA_DATA_FILES:數(shù)據(jù)文件及其所屬表空間信息。 DBA_TEMP_FILES:臨時文件及其所屬表空間信息。 DBA_USERS:所有用戶的默認表空間和臨時表空間信息。 DBA_TS_QUOTAS:所有用戶的表空間配額信息。 V$SORT_SEGMENT:數(shù)據(jù)庫實例的每個排序段信息。 V$SORT_USER:用戶使用臨時排序段信

14、息。21利用利用OEM管理表空間管理表空間 創(chuàng)建表空間 編輯表空間 查看表空間信息 刪除表空間 2223242526276.3 數(shù)據(jù)塊數(shù)據(jù)塊(BLOCK) 數(shù)據(jù)塊的概念 數(shù)據(jù)塊結(jié)構(gòu)28(1)數(shù)據(jù)塊的概念)數(shù)據(jù)塊的概念 數(shù)據(jù)塊是oracle服務(wù)器所能分配,讀取或?qū)懭氲淖钚〈鎯卧?最小的 I/O單元 包括一個或者多個OS BLOCK 在數(shù)據(jù)庫創(chuàng)建時設(shè)置,不可更改 分為標準塊和非標準塊 DB_BLOCK_SIZE 參數(shù)設(shè)置標準塊大小29(2)數(shù)據(jù)庫塊結(jié)構(gòu))數(shù)據(jù)庫塊結(jié)構(gòu)HeaderFree spaceData30 塊頭部包括標題、表目錄、行目錄三部分。 標題包含塊的一般屬性信息,如塊的物理地址、塊

15、所屬段的類型等; 表目錄包含數(shù)據(jù)塊中保存的表的信息; 行目錄包含數(shù)據(jù)塊中的行地址等信息。 存儲區(qū)包括行數(shù)據(jù)區(qū)和空閑區(qū)兩部分。 行數(shù)據(jù)區(qū)是已經(jīng)使用的空間,保存數(shù)據(jù)庫的對象數(shù)據(jù); 空閑區(qū)是尚未使用的存儲空間,用于存放新的行或用來更新已存在的行。 316.4 區(qū)區(qū)區(qū)是由一系列連續(xù)的數(shù)據(jù)塊構(gòu)成的邏輯存儲單元,是存儲空間分配與回收的最小單位。當創(chuàng)建一個數(shù)據(jù)庫對象時,Oracle為對象分配若干個區(qū),以構(gòu)成一個段來為對象提供初始的存儲空間。當段中已分配的區(qū)都寫滿后,Oracle會為段分配一個新區(qū),以容納更多的數(shù)據(jù)。326.5 段概述段概述 段的概述 段是由一個或多個擴展區(qū)組成的邏輯存儲單元。 數(shù)據(jù)庫模式對象在邏輯上是以段來占據(jù)表空間的大小。 段代表特定數(shù)據(jù)類型的數(shù)據(jù)存儲結(jié)構(gòu)。 段的類型: 數(shù)據(jù)段 索引段 臨時段 回滾段33 數(shù)據(jù)段 數(shù)據(jù)段用來存儲表或簇的數(shù)據(jù),可以細分為表數(shù)據(jù)段、索引表數(shù)據(jù)段、分區(qū)表數(shù)據(jù)段及簇數(shù)據(jù)段四種。 索引段 用來存放索引信息,主要包括存儲ROWID和索引鍵。 索引段與其相應(yīng)的表段經(jīng)常會被同時訪問,為了減少硬盤訪問

溫馨提示

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

評論

0/150

提交評論