Oracle 10g臨時表空間組

2021-08-29 16:46:51 字數 1995 閱讀 3468

oracle

10g引進了臨時表空間組(temporary tablespace

group)的概念,它允許使用者在不同的會話中同時利用多個臨時表空間。

1. 臨時表空間組的主要特徵

n          乙個臨時表空間組必須由至少乙個臨時表空間組成,並且無明確的最大數量限制。  

n          如果刪除了乙個臨時表空間組的所有成員,該組也自動被刪除。

n          臨時表空間的名字不能與臨時表空間組的名字相同。  

n          在給使用者分配乙個臨時表空間時,可以使用臨時表空間組的名字代替實際的臨時表空間名;在給資料庫分配預設臨時表空間時也可以使用臨時表空間組的名字。

2. 臨時表空間組的有點

使用臨時表空間組而非普通的臨時表空間,有如下好處:

n          由於sql查詢可以併發使用幾個臨時表空間進行排序操作,因此sql查詢很少會出現排序空間超出,避免當臨時表空間不足時所引起的磁碟排序問題。 

n          可以在資料庫級指定多個預設臨時表空間。 

n          乙個並行操作的並行伺服器將有效地利用多個臨時表空間。

n          乙個使用者在不同會話中可以同時使用多個臨時表空間。

3. 管理臨時表空間組

臨時表空間組是在建立臨時表空間時通過指定group字句建立的。可以將乙個表空間從乙個組移動另乙個組,或是從乙個組中刪除臨時表空間,或是往組裡新增新的表空間。

1). 建立臨時表空間組

建立臨時表空間時指定group:

create smallfile

temporary tablespace "temp01"

tempfile

autoextend on next 640k maxsize unlimited

extent management local

uniform. size 1m

tablespace group tbs_group_1

go

create smallfile

temporary tablespace "temp02"

tempfile

autoextend on next 640k maxsize unlimited

extent management local

uniform. size 1m

tablespace group tbs_group_1

go

create smallfile

temporary tablespace "temp03"

tempfile

autoextend on next 640k maxsize unlimited

extent management local

uniform. size 1m

tablespace group tbs_group_2

go

create smallfile

temporary tablespace "temp04"

tempfile

autoextend on next 640k maxsize unlimited

extent management local

uniform. size 1m

tablespace group tbs_group_2 go

2)、修改資料庫預設臨時表空間

alter database default temporary tablespace

tbs_group_1;

3)、臨時表空間組無法顯式建立,當第乙個臨時表空間分配給該組時自動建立,當組內所有臨時表空間被移除時自動刪除

注意:從oracle10gr2開始,使用rman恢復資料庫之後,oracle會自動重新建立臨時文件,由於臨時文件是sparse file,所以建立會很迅速,通常您不會感覺得到。

oracle10g 釋放表空間

我們都知道資料表的龐大導而致其查詢速度的降低是水到渠成的,所以我們只有將相關的資料表的資料相應的移走,但是如果使用oracle delete之後,相關的資料刪除了,但是速度沒有多大改善,憂悶了。使用備份表再drop掉原表。的確可以解決問題。但是較麻煩,今天請教了乙個oracle高手,解決了問題。由於...

Oracle 10g表轉移表空間

1.單錶轉移表空間 場景 有表user存放在表空間oldspace下,需把錶user移動到表空間newspace下 執行語句 alter table user move tablespace newspace commit 2.使用者scott下的所有表都轉移至表空間newspace下 select...

Oracle 10g 表轉移表空間

1.單錶轉移表空間 場景 有表user存放在表空間oldspace下,需把錶user 移動到表空間newspace下 執行語句 alter table user move tablespace newspace commit 2.使用者scott下的所有表都轉移至表空間newspace下 selec...