oracle 创建 temporary tablespace group

os: centos 7.4
db: oracle 12.1.0.2

oracle 可以对多个 temporary tablespace 包装成 temporary group

temporary smallfile tablespace

创建两个 temporary tablespace,在 orclpdb 下操作

CREATE TEMPORARY TABLESPACE peiyb_temp01 
TEMPFILE '/u01/app/oracle/oradata/orcl/orclpdb/peiyb_temp01.dbf' SIZE 1G AUTOEXTEND ON NEXT 1G MAXSIZE UNLIMITED
TABLESPACE GROUP ''
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512M;

CREATE TEMPORARY TABLESPACE peiyb_temp02 
TEMPFILE '/u01/app/oracle/oradata/orcl/orclpdb/peiyb_temp02.dbf' SIZE 1G AUTOEXTEND ON NEXT 1G MAXSIZE UNLIMITED
TABLESPACE GROUP ''
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 512M;

查看 orclpdb 的 temporary tablespace

select *
from dba_tablespaces dt
where 1=1
 and dt.contents='TEMPORARY'
;

TABLESPACE_NAME 	       BLOCK_SIZE INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS   MAX_SIZE PCT_INCREASE MIN_EXTLEN STATUS	  CONTENTS  LOGGING   FOR EXTENT_MAN ALLOCATIO PLU SEGMEN DEF_TAB_ RETENTION   BIG PREDICA ENC COMPRESS_FOR		      DEF_INME DEF_INME DEF_INMEMORY_DI DEF_INMEMORY_COMP DEF_INMEMORY_
------------------------------ ---------- -------------- ----------- ----------- ----------- ---------- ------------ ---------- --------- --------- --------- --- ---------- --------- --- ------ -------- ----------- --- ------- --- ------------------------------ -------- -------- --------------- ----------------- -------------
TEMP				         8192	     1048576     1048576	       1	     2147483645 	   0	1048576 ONLINE	  TEMPORARY NOLOGGING NO  LOCAL      UNIFORM   NO  MANUAL DISABLED NOT APPLY   NO  HOST    NO				      DISABLED
PEIYB_TEMP01			     8192      536870912   536870912	       1	     2147483645 	   0  536870912 ONLINE	  TEMPORARY NOLOGGING NO  LOCAL      UNIFORM   NO  MANUAL DISABLED NOT APPLY   NO  HOST    NO				      DISABLED
PEIYB_TEMP02			     8192      536870912   536870912	       1	     2147483645 	   0  536870912 ONLINE	  TEMPORARY NOLOGGING NO  LOCAL      UNIFORM   NO  MANUAL DISABLED NOT APPLY   NO  HOST    NO				      DISABLED


temporary tablespace group

创建 temporary group peiyb_temp_group

SQL> ALTER TABLESPACE peiyb_temp01 TABLESPACE GROUP peiyb_temp_group;
SQL> ALTER TABLESPACE peiyb_temp02 TABLESPACE GROUP peiyb_temp_group;
SQL> 
SQL> select * from dba_tablespace_groups;

GROUP_NAME		       TABLESPACE_NAME
------------------------------ ------------------------------
PEIYB_TEMP_GROUP	       PEIYB_TEMP01
PEIYB_TEMP_GROUP	       PEIYB_TEMP02

如果想从 group 中移除的话就设置为空

SQL> ALTER TABLESPACE peiyb_temp02 TABLESPACE GROUP '';

设置成 default temporary tablespace

SQL> alter pluggable database default temporary tablespace peiyb_temp_group ;

可以查看设置后的值

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

这是可以移除之前的 temporary tablespace

SQL> drop tablespace temp;

参考:
https://docs.oracle.com/database/121/ADMIN/tspaces.htm#ADMIN12315
https://docs.oracle.com/database/121/ADMIN/tspaces.htm#ADMIN14233

你可能感兴趣的:(#,oracle,basic,knowledge)