ITPub博客

首页 > 数据库 > Oracle > 通过实验了解Temporary Tablespce Group

通过实验了解Temporary Tablespce Group

原创 Oracle 作者:djb1008 时间:2011-07-27 17:23:53 0 删除 编辑

1.临时表空间组的几个特性

A.至少含有一个临时表空间,之多含有多少个临时表空间没有限制。

B.名称不可以与其它表空间名称相同。

C.通过DBA_TABLESPACE_GROUPS查看临时表空间组和它的成员。

[@more@]

  1. 表空间组的创建与删除方式

A. 当把第一个临时表空间加入到临时表空间组时,将缺省自动(implicitly)创建了该临时表空间组。

B. 当临时表空组的最后一个成员被移出该组时,将缺省自动删除该组。

不可以通过命令现式创建和删除临时表空间组。

  1. 临时表空间组的几个操作

3.1创建一个临时表空间组

SQL> select ts#,name from v$tablespace;

TS# NAME

0 SYSTEM

1 UNDOTBS1

2 SYSAUX

3 TEMP

4 USERS

6 AIDUTEMP2

SQL> select * from dba_tablespace_groups;

no rows selected

创建临时表时,指定属于表空间组:

SQL>Create temporary tablespace aidutemp1 tempfile ‘/oracle/oradata/aidu/temp01.dbf’ size 50m tablespace group group1;

Tablespace created.

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

---------------------------------------------------------------

GROUP1 AIDUTEMP1

将一个已经存在的临时表空间,指定属于一个表空间组:

SQL>Alter tablespace aidutemp2 tablespace group group2;

Tablespace altered.

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

------------------------------------------------------------------------------------------

GROUP1 AIDUTEMP1

GROUP2 AIDUTEMP2

3.2更改临时表空间组的成员

将临时表空间加入已经存在的临时表空间组

SQL> create temporary tablespace aidutemp3 tempfile '/oracle/oradata/aidu/aidutemp3.dbf' size 50m tablespace group group1;

Tablespace created.

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

------------------------------------------------------------------------------------------

GROUP1 AIDUTEMP1

GROUP2 AIDUTEMP2

GROUP1 AIDUTEMP3

将临时表空间移动到另外一个组

SQL> alter tablespace aidutemp2 tablespace group group1;

Tablespace altered.

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

------------------------------------------------------------------------------------------

GROUP1 AIDUTEMP1

GROUP1 AIDUTEMP2

GROUP1 AIDUTEMP3

临时表空间aidutemp2从group2移动到group1组,group2因为没有组员了,所以自动被删除。

3.3临时表空间组的成员退出临时表空间组

SQL> alter tablespace aidutemp2 tablespace group '';

Tablespace altered.

SQL> select * from dba_tablespace_groups;

GROUP_NAME TABLESPACE_NAME

------------------------------------------------------------------------------------------

GROUP1 AIDUTEMP1

GROUP1 AIDUTEMP3

3.4设定临时表空间组为数据库缺省临时表空间

SQL> alter database default temporary tablespace group1;

Database altered.

可以通过下面的语句查询数据库的临时表空间

SQL> select * from database_properties where property_name = 'DEFAULT_TEMP_TABLESPACE';

PROPERTY_NAME PROPERTY_VALUE DESCRIPTION

-------------------------------------------------------------------------------------------------------------------------------

DEFAULT_TEMP_TABLESPACE GROUP1 Name of default temporary tablespace

注意:

如果临时表空间组被设置为数据库缺省临时表空间,就不可以drop组中成员,如果确实要drop成员,请首先将该成员从组中移除出来,就像我们不可以drop一个被设置为数据库缺省临时表空间的单个表空间。

题外话:

下面的语句查询数据库的缺省永久表空间

SQL> select * from database_properties where property_name = 'DEFAULT_ PERMANENT _TABLESPACE';

PROPERTY_NAME PROPERTY_VALUE DESCRIPTION

-------------------------------------------------------------------------------------------------------------------------------

DEFAULT_PERMANENT_TABLESPACE USERS Name of default permanent tablespace

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/32980/viewspace-1053082/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-07-27

  • 博文量
    175
  • 访问量
    778867