Oracle表空間詳解

2021-09-01 21:08:07 字數 2277 閱讀 5769

1.表空間的分類

oracle資料庫把錶空間分為兩類:系統表空間和非系統表空間。

1.1系統表空間指的是資料庫系統建立時需要的表空間,這些表空間在資料庫建立時自動建立,是每個資料庫必須的表空間,滿足資料庫系統執行的最低要求,如系統表空間中存放的資料字典、還原段。在使用者沒有建立非系統表空間時,系統表空間可以存放使用者資料或索引等,但是這樣做會增加系統表空間的i/o,影響系統效率。

1.2非系統表空間是使用者根據業務需求而建立的表空間,非系統表空間可以按照資料多少、使用頻度、需求數量等方面靈活設定,這些表空間可以儲存還原段或者臨時段,可以有效的提高系統的效率。

2.建立表空間

2.1建立常用表空間

create tablespace user_data001  datafile 'd:\user_data001.dbf' size 100m;

2.2建立本地管理的表空間

create tablespace bendi_data datafile 'd:\bendi_data.dbf' size 100m

extent management local uniform size 1m;

2.3建立還原表空間

create undo tablespace user_undo datafile 'd:\user_undo.dbf' size 10m;

2.4建立臨時表空間

create temporary tablespace user_temp tempfile 'd:\user_temp.dbf' size 20m

extent management local

uniform size 1m;

2.5建立預設臨時表空間

預設臨時表空間指的是一旦資料庫啟動則預設使用該錶空間作為預設的臨時表空間,用於存放使用者會話數如排序操作。預設臨時表空間可以在建立資料庫時建立,指令為default temporary tablespace ,也可以在資料庫建立後建立,此時需要先建立乙個臨時表空間,再使用alter database default temporory tablespace 指令更改臨時表空間。

2.6建立大檔案表空間

create bigfile tablespace bigfiletbs datafile 'd:\bigfiletbs001.dbf' size 2g;

大檔案表空間由乙個大檔案組成,而不是由多個傳統的小檔案組成,這使得oracle有能力建立和管理大檔案。正是大檔案表空間和大檔案的一一對應特性,使得表空間成為磁碟空間管理、備份和恢復的操作物件。

3.表空間管理

3.1唯讀管理就是把錶空間設定為唯讀狀態,這樣的表空間中的資料只能被使用者讀取,而不能做任何修改或插入操作,唯讀表空間不被重做日誌保護,減少重做日誌的大小。

將表空間設定為唯讀狀態:alter tablespace user_tas read only;

3.2修改表空間大小:

第一種是在建立表空間時,使用autoextend on字句使得表空間在需要的時候可以自動擴充套件

create tablespace manager_tbs1 

datafile 'd:/tbs_manager1/tbs1.dbf' 

size 100m 

autoextend on;

第二種是在建立表空間後使用alter database datafile   file_name(完整路徑) autoextend on

第三種是在表空間中增加資料檔案

alter tablespace manage_tbs add datafile 'd:\tbs_manager\tbs002.dbf' size 50m;

第四種方法是修改資料檔案的大小

alter  database datafile 'd:\tbs_manager\tbs002.dbf' resize 100m;

4.刪除表空間

當不需要乙個表空間時,可以刪除該錶空間以釋放磁碟空間。

drop tablespace tablespace_name

[including contents [and datafiles] [cascade constraints]]

including contents:刪除表空間中的所有區段

and datafiles:刪除表空間中的資料檔案,該檔案時乙個oracle格式的作業系統檔案

cascade constraints:刪除和該錶空間中表相關的引用完整性約束,外部表會引用該錶空間的表的唯一鍵等作為外部表的引用。

oracle建立表空間詳解

freeeim 在 oracle建立表空間 注意點 1.如果在pl sql 等工具裡開啟的話,直接修改下面的 中 斜體加粗部分 執行 2.確保路徑存在,比如 d oracle oradata oracle9i 也就是你要儲存檔案的路徑存在 分為四步 第1步 建立臨時表空間 create tempor...

Oracle表空間 表

表 table 表空間是對儲存系統檔案 使用者資訊等資料的乙個空間。oracle表空間屬於oracle中的儲存結構,是由資料檔案組成,乙個資料庫例項可以有n個表空間,每個資料庫至少有乙個表空間 system表空間 乙個表空間下可以有n張表。可以通過表空間來實現對oracle的調優 oracle資料庫...

Oracle 表空間和臨時表空間

表空間 此空間是用來進行資料儲存的 表 function 儲存過程等 所以是實際物理儲存區域。臨時表空間 主要用途是在資料庫進行排序運算 如建立索引 order by及group by distinct union intersect minus sort merge及join analyze命令 ...