欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > Oracle临时表空间(基础操作)

Oracle临时表空间(基础操作)

2025/2/20 18:25:08 来源:https://blog.csdn.net/aabbdnsm/article/details/145600484  浏览:    关键词:Oracle临时表空间(基础操作)

临时表空间

临时表空间:用来存放用户的临时数据,临时数据在需要时被覆盖,关闭数据库后自动删除,其中不能存放永久性数据。

用户进程服务器进程是一对一的叫做专用连接

任何一个用户连到oracle数据库,oracle都会开一个服务进程和其一一对应。

请添加图片描述

select * from a order by a.xxx;
非常多的数据进行排序的时候会占用PGA(内存)

列如:

用户对很多数据行进行排序时,排序在PGA中进行。但如果排序的数据过多,导致内存不足时,oracle会把会排序的数据分成多份,每次只取一份放到PGA中进行排序,其他的部分都放到临时表空间(硬盘上)中,同时再从临时表空间(硬盘上)中取一份没有排序的数据到PGA中进行排序,直到所有数据排序完成

这种情况一旦发生系统性能降低很快!

临时表空间和临时表空间组

临时表空间组是一组由临时表空间组成的组,临时表空间组和临时表空间不能同名。

临时表空间不能显式的创建和删除;当把第一个临时表空间分配给某个临时表空间组时。

会自动创建这个临时表空间组,将临时表空间组的最后一个临时表删除时,会自动删除临时表空间组

#查看系统表空间
select * from v$tablespace;

请添加图片描述

#查看系统表空间(详细)
select * from dba_tablespaces;
太长了就不截了
重点关注这里:
CONTENTS:TEMPORARY(临时表空间)#查看数据文件
select * from dba_data_files;
为什么该查询下没有临时表空间?
#临时表空间是放到了其他地方
#查看临时文件信息
select * from dba_temp_files;
select * from v$tempfile;

在这里插入图片描述

#查看临时表空间组的信息
select * from dba_tablespace_groups;
SQL> select * from dba_tablespace_groups;
GROUP_NAME                     TABLESPACE_NAME
------------------------------ ------------------------------

查看默认的临时表空间

select * 
from database_properties
where property_name= 'DEFAULT_TEMP_TABLESPACE';

在这里插入图片描述

创建临时表空间

创建临时表空间,不属于

create temporary tablespace temp2 tempfile
'G:\software\oracle\oradata\orcl\temp2a.dbf' size 10m autoextend on;

请添加图片描述

创建临时表空间,属于组temp_grp

create temporary tablespace temp3 tempfile
'G:\software\oracle\oradata\orcl\temp3a.dbf' size 10m autoextend on
tablespace group temp_grp;

请添加图片描述

temp2加入到temp-grp组中去:

alter tablespace temp2 tablespace group temp_grep;

请添加图片描述

temp2移除temp-grp组:

alter tablespace temp2 tablespace group '';

请添加图片描述

临时表空间添加一个临时文件

select * from dba_temp_files;
SQL> select * from dba_temp_files;
#只有一个文件
FILE_NAME:G:\SOFTWARE\ORACLE\ORADATA\ORCL\TEMP2A.DBF #添加一个临时文件
alter tablespace temp2 add tempfile 'G:\SOFTWARE\ORACLE\ORADATA\ORCL\TEMP2B.DBF' size 10m autoextend on;#查看临时文件
FILE_NAME 
G:\SOFTWARE\ORACLE\ORADATA\ORCL\TEMP2A.DBF
G:\SOFTWARE\ORACLE\ORADATA\ORCL\TEMP2B.DBF

修改系统默认临时表空间、

修改系统默认临时表空间为一个

一个可以包含一个或者多个临时表空间

alter database default temporary tablespace temp_grp;select * 
from database_properties
where property_name= 'DEFAULT_TEMP_TABLESPACE';

请添加图片描述

修改系统默认临时表空间为一个临时表空间

alter database default temporary tablespace temp2;select * 
from database_properties
where property_name= 'DEFAULT_TEMP_TABLESPACE';

请添加图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词