【原】Oracle临时表空间组

简介: 作者:david_zhang@sh 【转载时请以超链接形式标明文章】 链接:http://www.cnblogs.com/david-zhang-index/archive/2012/04/11/2442726.html Oracle 10g之前,同一用户的多个会话只可以使用同一个临时表空间,因为在给定的时间只有一个临时表空间默认给用户,为了解决这个潜在的瓶颈,Oracle支持临时表空间组即包含多个临时表空间的集合。

作者:david_zhang@sh 【转载时请以超链接形式标明文章】

链接:http://www.cnblogs.com/david-zhang-index/archive/2012/04/11/2442726.html

Oracle 10g之前,同一用户的多个会话只可以使用同一个临时表空间,因为在给定的时间只有一个临时表空间默认给用户,为了解决这个潜在的瓶颈,Oracle支持临时表空间组即包含多个临时表空间的集合。临时表空间组逻辑上就相当于一个临时表空间。

Example:

 1 SQL>create temporary tablespace temp1 tempfile '/u01/app/oracle/oradata/orcl/temp01.dbf' size 10M;
 2 
 3 SQL>create temporary tablespace temp2 tempfile '/u01/app/oracle/oradata/orcl/temp02.dbf' size 10M;
 4 
 5 SQL>create temporary tablespace temp3 tempfile '/u01/app/oracle/oradata/orcl/temp03.dbf' size 10M;
 6 
 7 SQL>select name from v$tempfile;
 8 
 9 NAME
10 
11 -----------------------------------------------------------------------------------------------
12 
13 /u01/app/oracle/oradata/orcl/temp01.dbf
14 
15 /u01/app/oracle/oradata/orcl/temp02.dbf
16 
17 /u01/app/oracle/oradata/orcl/temp01.dbf
18 
19 SQL>select tablespace_name from dba_tablespaces where contents='TEMPORARY';
20 
21 TABLESPACE_NAME
22 
23 -----------------------------------------------------------------------------------------------
24 
25 TEMP1
26 
27 TEMP2
28 
29 TEMP3
30 
31 添加temp1,temp2,temp3到临时表空间组tempgrp中
32 
33 SQL>alter tablespace temp1 tablespace group tempgrp;
34 
35 SQL>alter tablespace temp2 tablespace group tempgrp;
36 
37 SQL>alter tablespace temp3 tablespace group tempgrp;
38 
39 启用临时表空间组
40 
41 SQL>alter database default temporary tablespace tempgrp;
42 
43 SQL>select * from dba_tablespace_groups;
44 
45 GROUP_NAME                               TABLESPACE_NAME
46 
47 -----------------------------------------------------------------------------------------
48 
49 TEMPGRP                 TEMP1
50 
51 TEMPGRP                 TEMP2
52 
53 TEMPGRP                 TEMP3
54 
55 此时数据库所有用户的默认临时表空间为tempgrp
56 
57 SQL>select username,defualt_tablespace,temporary_tablespace from dba_user where username='SCOTT';
58 
59 USERNAME                  DEFAULT_TABLESPACE                                  TEMPORARY_TABLESPACE
60 
61 ---------------------------------------------------------------------------------------------------------------
62 
63 SCOTT                        USERS                                                          TEMPGRP
64 
65 删除临时表空间组
66 
67 1.必须先删除成员
68 
69 SQL>alter tablespace temp1 tablespace group '';(表示删除temp1)
70 
71 SQL>select * from dba_tablespace_groups;
72 
73 GROUP_NAME                               TABLESPACE_NAME
74 
75 -----------------------------------------------------------------------------------------
76 
77 TEMPGRP                 TEMP2
78 
79 TEMPGRP                 TEMP3
80 
81 同理将temp2,temp3删除
82 
83 当表空间组是数据库默认表空间时,最后一个成员删除报错:ORA-10919:Defualt temporary tablespace group must be have at least one tablespace
84 
85 SQL>alter database default temporary tablespace temp;
86 
87 此时再删除最后一个成员,临时表空间组自动消失
88 
89 SQL>select * from dba_tablespace_groups;
90 
91 no rows selected
92 
93 删除temp1表空间及数据文件
94 
95 SQL>drop temporary tablespace temp1 including contents and datafiles;

总结:oracle11g新特性

相关文章
|
6月前
|
存储 Oracle NoSQL
Oracle 表空间、数据文件、schema的关系
Oracle 表空间、数据文件、schema的关系
184 2
|
SQL 监控 Oracle
Oracle创建和管理表空间
Oracle创建和管理表空间
94 1
|
Oracle 关系型数据库 数据库
9-4 Oracle管理表空间和数据文件
9-4 Oracle管理表空间和数据文件
118 0
|
3月前
|
Oracle 关系型数据库 数据库
[oracle]拆分多用户的公共表空间
[oracle]拆分多用户的公共表空间
|
6月前
|
SQL Oracle 关系型数据库
Oracle 数据泵导出导入(映射表空间、Schema)
Oracle 数据泵导出导入(映射表空间、Schema)
|
6月前
|
Oracle 关系型数据库 数据库
Oracle 11gR2学习之三(创建用户及表空间、修改字符集和Oracle开机启动)
Oracle 11gR2学习之三(创建用户及表空间、修改字符集和Oracle开机启动)
|
6月前
|
存储 Oracle 关系型数据库
Oracle表空间:数据王国的疆域规划
【4月更文挑战第19天】Oracle中的表空间是逻辑存储结构,用于存放数据库对象的物理数据,是数据库性能优化和备份恢复的基础。表空间类型多样,如永久和临时表空间,需根据业务需求进行规划和管理。通过监控使用情况、利用自动扩展功能,可有效管理表空间,提高数据访问速度和可靠性。深入理解表空间有助于优化数据库存储和管理。
|
6月前
|
Oracle 关系型数据库
oracle 修改表空间文件路径方法
oracle 修改表空间文件路径方法
|
6月前
|
SQL Oracle 关系型数据库
Oracle临时表详解
Oracle临时表详解
|
6月前
|
Oracle 关系型数据库 数据库
Oracle系列之五:Oracle表空间
Oracle系列之五:Oracle表空间