久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么理解Oracle臨時表空間組

145次閱讀
沒有評論

共計 3410 個字符,預計需要花費 9 分鐘才能閱讀完成。

本篇內容介紹了“怎么理解 Oracle 臨時表空間組”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

在 oracle10g 以前,每個用戶只能使用一個臨時表空間,就是其默認臨時表空間。oracle10g 及其以后版本提供了新的臨時表空間組的功能,允許將多個臨時表空間打包成一個組,然后指定用戶的默認臨時表空間為該臨時表空間組,從而達到一個用戶可以使用多個臨時表空間的目的。

一個臨時表空間組至少包含一個臨時表空間。臨時表空間組無法顯式創建,當第一個臨時表空間分配給該組時自動創建,當組內所有臨時表空間被移除時自動刪除。

臨時表空間組支持的操作:

可以將臨時表空間從一個組移動到另外一個組(如果組不存在,則自動創建)。

可以將組中的臨時表空間從組中移除。

可以將目前不屬于任何組的臨時表空間加入一個組。

使用臨時表空間組的好處:

防止一個臨時表空間出現空間不足的問題。

同一個用戶同時連接多個 session 時可以使用不同的臨時表空間。

在并行操作中可以并行使用多個臨時表空間。

臨時表空間組支持的操作:

可以將臨時表空間從一個組移動到另外一個組(如果組不存在,則自動創建)。

可以將組中的臨時表空間從組中移除。

可以將目前不屬于任何組的臨時表空間加入一個組。

使用臨時表空間組的好處:

防止一個臨時表空間出現空間不足的問題。

同一個用戶同時連接多個 session 時可以使用不同的臨時表空間。

在并行操作中可以并行使用多個臨時表空間。

下面給出幾個例子:

環境

SQL select * from v$version;

BANNER

——————————————————————————–

Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 – Prod

PL/SQL Release 10.2.0.1.0 – Production

CORE 10.2.0.1.0 Production

TNS for 32-bit Windows: Version 10.2.0.1.0 – Production

NLSRTL Version 10.2.0.1.0 – Production

1. 創建臨時表空間組

SQL create temporary tablespace temp1

2 tempfile e:/oracle/oradata/ning/temp101.dbf size 10m

3 tablespace group group1;

表空間已創建。

SQL create temporary tablespace temp2

2 tempfile e:/oracle/oradata/ning/temp201.dbf size 10m

3 tablespace group group1;

表空間已創建。

2. 查看系統中目前存在的臨時表空間組的信息

SQL select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

—————————— ——————————

GROUP1 TEMP1

GROUP1 TEMP2

3. 移動臨時表空間到新的臨時表空間組

SQL alter tablespace temp2 tablespace group group2;

表空間已更改。

SQL select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

—————————— ——————————

GROUP1 TEMP1

GROUP2 TEMP2

4. 將臨時表空間從臨時表空間組中移出

SQL alter tablespace temp2 tablespace group

表空間已更改。

SQL select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

—————————— ——————————

GROUP1 TEMP1

5. 臨時表空間組的名字不能和表空間的名字沖突

SQL create temporary tablespace temp3

2 tempfile e:/oracle/oradata/ning/temp301.dbf size 10m

3 tablespace group temp3;

create temporary tablespace temp3

*

第  1  行出現錯誤:

ORA-10918: TABLESPACE GROUP name cannot be the same as tablespace name

SQL create temporary tablespace temp3

2 tempfile e:/oracle/oradata/ning/temp301.dbf size 10m

3 tablespace group temp1;

create temporary tablespace temp3

*

第  1  行出現錯誤:

ORA-01543:  表空間   TEMP1   已存在

6. 刪除組中所有的臨時表空間后,組會自動刪除

SQL select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

—————————— ——————————

GROUP1 TEMP1

SQL drop tablespace temp1 including contents and datafiles;

表空間已刪除。

SQL select * from dba_tablespace_groups;

未選定行

7. 可以將數據庫或者用戶的默認臨時表空間指定為臨時表空間組

SQL create temporary tablespace temp1

2 tempfile e:/oracle/oradata/ning/temp101.dbf size 10m

3 tablespace group group1;

表空間已創建。

SQL alter tablespace temp2 tablespace group group1;

表空間已更改。

SQL select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

—————————— ——————————

GROUP1 TEMP1

GROUP1 TEMP2

SQL alter database default temporary tablespace group1;

數據庫已更改。

SQL alter user ning temporary tablespace group1;

用戶已更改。

8. 同一個用戶的不同 session 可以使用不同的臨時表空間

首先用 sys 用戶查詢

SQL select username, session_num, tablespace from v$sort_usage;

未選定行

新開 session1 執行

SQL conn ning/ning

已連接。

select a.table_name, b.table_name from dict A, dict B order by a.table_name;

新開 session2 執行

SQL conn ning/ning

已連接。

select a.table_name, b.table_name from dict A, dict B;

sys 查詢:

SQL select username, session_num, tablespace from v$sort_usage;

USERNAME SESSION_NUM TABLESPACE

———- ———– ———-

NING 74 TEMP2

NING 62 TEMP1

可以發現,同一個用戶 ning 的兩個 session 分別使用了兩個不同的臨時表空間。

“怎么理解 Oracle 臨時表空間組”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-20發表,共計3410字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 抚顺市| 韶关市| 格尔木市| 青田县| 天峨县| 泰兴市| 怀柔区| 高碑店市| 麻阳| 武邑县| 平罗县| 图们市| 汽车| 金寨县| 沙雅县| 晋城| 孝昌县| 彝良县| 江津市| 镇雄县| 长治县| 阿鲁科尔沁旗| 新建县| 长垣县| 盐津县| 随州市| 邓州市| 大足县| 登封市| 泰兴市| 庄河市| 浦县| 汕尾市| 长乐市| 甘泉县| 内乡县| 惠水县| 常熟市| 德令哈市| 龙南县| 巫山县|