一、临时表空间的作用
临时表空间:用来存放用户的临时数据,临时数据就是在需要时被覆盖,关闭数据库后自动删除,其中不能存放永久性数据。
例如当用户对很多数据行进行排序时,排序在PGA中进行。但是如果排序的数据过多,导致内存不足时,oracle会把要排序的数据分成多份,每次只取一份放在PGA中进行排序,其他的部分都放到临时表空间(即硬盘)中,当PGA里的部分排序完成后,把排序好的部分交换到临时表空间中,同时再从临时表空间里取一份没有排序的数据到PGA中进行排序,这样直到所有数据排序完成为止.
二、临时表空间和临时表空间组
1、临时表空间组是一组由临时表空间组成的组,临时表空间组和临时表空间不能同名。
2、临时表空间组不能显式地创建和删除;
3、当把第一个临时表空间分配给某个临时表空间组时,会自动创建这个临时表空间组;
4、将临时表空间组的最后一个临时表空间删除时,会自动删除临时表空间组。
三、临时表空间的操作:
1、查看临时文件信息:
select * from v$tempfile;--方式一 select * from dba_temp_files;--方式二 select * from dba_data_files;--查看除了临时表空间文件的其他文件)
2、查看临时表空间组的信息:
select * from dba_tablespace_groups;
3、查看临时表空间的信息:
select * from dba_tablespaces; select * from v$tablespace;
4、查找默认的临时表空间:
select property_name, property_value from database_properties where property_name = 'DEFAULT_TEMP_TABLESPACE';
四、临时表空间的操作2:
1、创建临时表空间(不属于组):
create temporary tablespace temp2 tempfile 'D:\app\Administrator\oradata\orcl\temp2a.dbf' size 10m autoextend on;
2、 创建临时表空间(属于组):
create temporary tablespace temp3 tempfile ‘D:\app\Administrator\oradata\orcl\temp3a.dbf’ size 10m autoextend on tablespace group temp_grp;
3、 把某个临时表空间关联到组里:
alter tablespace temp2 tablespace group temp_grp;
4、把某个临时表空间移出组:
alter tablespace temp2 tablespace group '';
5、给一个临时表空间增加临时文件:
alter tablespace temp2 add tempfile 'D:\app\Administrator\oradata\orcl\temp2b.dbf' size 20m autoextend on;
6、设置数据库的默认临时表空间为一个新的临时表空间:
alter database default temporary tablespace temp2;
7、或者也可以设置数据库的默认临时表空间为一个组:
alter database default temporary tablespace temp_grp;
文章评论