資料區塊-》區-》段-》資料表空間-》資料庫
一.資料表空間
1.資料表空間分為系統資料表空間和非系統資料表空間
650) this.width=650;" src="http://www.bkjia.com/uploads/allimg/131229/210T53238-0.jpg" alt="2012070821320748.jpg" />
小檔案資料表空間:即系統預設的資料表空間.System資料表空間,sysaux資料表空間
大檔案資料表空間:是為超大型資料庫設計的,只包含一個大資料檔案,該檔案的大小為128KB<size<128TB.
可以簡化資料檔案的管理,減少SGA的需求,減少控制檔案.
資料表空間的管理組件括:
建立資料表空間
修改資料表空間
資料表空間的備份
大檔案資料表空間的管理
2.擴充資料表空間的方式有哪些?
1).為資料表空間添加資料檔案
SQL>ALTERTABLESPACEORCLTBS1ADDDATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'SIZE10M; |
為ORCL資料庫中資料表空間名為ORCLTBS1添加一個大小為10MB的新資料檔案.
2).改變資料檔案的大小
SQL>ALTERDATABASEDATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'RESIZE20M; |
將ORCL資料庫中資料表空間名為ORCLTBS1的資料檔案ORCLTBS1_2.DBF增加到20MB.
3).允許資料檔案自動擴充
SQL>ALTERDATABASEDATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF' AUTOEXTENDONNEXT5MMAXSIZE100M; |
3.修改資料表空間的可用性
SQL>ALTERTABLESPACE...OFFLINE|ONLINE; |
SQL>ALTERTABLESPACEORCLTBS1OFFLINE; |
將資料表空間ORCLTBS1設定為OFFLINE狀態
SQL>ALTERTABLESPACEORCLTBS1ONLINE; |
將資料表空間ORCLTBS1設定為ONLINE狀態
4.給資料表空間重新命名:
ALTERTABLESPACEORCLTBS1RENAMETOORCLTBS1_NEW; |
5.資料表空間的備份
SQL>ALTERTABLESPACEORCLTBS1BEGINBACKUP; |
複製ORCLTBS1資料表空間的資料檔案ORCLTBS1_1.dbf和ORCLTBS1_2.dbf到目標位置.
SQL>ALTERTABLESPACEORCLTBS1ENDBACKUP; |
6.刪除資料表空間
1).除了system資料表空間和sysaux資料表空間外,其他資料表空間都可以刪除.
2).一旦資料表空間被刪除,該資料表空間中的所有資料將永久性丟失.
3).如果資料表空間中的資料正在被使用,或資料表空間中包含未提交事務的復原資訊,則該資料表空間不能刪除
SQL>DROPTABLESPACEORCLTBS1INCLUDINGCONTENTS; |
7.大檔案資料表空間的操作
由於大檔案資料表空間只含有一個資料檔案,因此可以通過對錶空間的操作,實現對資料檔案的透明操作.
改變資料表空間的大小或擴充性è改變資料檔案的大小及擴充性的目的
1).改變資料檔案的大小
SQL>ALTERTABLESPACEORCLTBS1RESIZE20M; |
將ORCL資料庫中資料表空間名為ORCLTBS1的資料檔案ORCLTBS1_2.DBF增加到20MB.
2).允許資料檔案自動擴充
SQL>ALTERTABLESPACEORCLTBS1AUTOEXTENDONNEXT5MMAXSIZEUNLIMITED; |
二.資料區塊
資料區塊:1).輸入輸出的最小單位
2).是資料庫中最小的邏輯儲存單元,也是資料庫執行輸入/輸出操作的最小單位,由一個或多個作業系統塊構成.
三.區
區:是由一系列連續的資料區塊構成的邏輯儲存單元,是儲存空間分配與回收的最小單位.
區的管理主要指的是:分配與回收
當建立一個資料庫物件時,oracle為對象分配若干個區,以構成一個段來為對象提供初始的儲存空間.
1.區的分配
1).區分配採用自動擴充方式進行
SQL>CREATETABLESPACEORACLTBS6DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'SIZE20M EXTENTMANAGEMENTLOCALAUTOALLOCATE; |
本地管理方式,自動擴充
2).區分配採用固定大小,每個區5MB
SQL>CREATETABLESPACEORACLTBS7DATAFILE 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\ORCLTBS1_2.DBF'SIZE10M EXTENTMANAGEMENTUNIFORMSIZE5M; |
2.區的回收
通常分配給段的區將一直保留在段中,不論區中的資料區塊是否被使用.只有當段所屬的對象被刪除時,段中所有的區才會被回收.
四.段
段是由一個或多個連續或不連續的區組成的邏輯儲存單元.段是資料表空間的組成單位,代表特定資料類型的資料存放區結構.
通常一個資料庫物件只擁有一個段,一個段至少包含一個區.
1).資料區段
2).索引段
3).臨時段
4).復原段:用於資料被修改之前的值.
可以實現交易回復,資料庫恢複,資料庫的讀一致性和閃回查詢等