一.TEMP表空间

临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。当oracle里需要用到sort的时候,PGA中sort_area_size大小不够时,将会把数据放入临时表空间里进行排序,同时如果有异常情况的话,也会被放入临时表空间,正常来说,在完成Select语句、create index等一些使用TEMP表空间的排序操作后,Oracle是会自动释放掉临时段的。注意这里的释放,仅仅是将这些空间标记为空闲,并可重用,真正占用的磁盘空间并没有释放。所以Temp表空间可能会越来越大。

排序是很耗资源的,Temp表空间满了,关键是优化你的语句,尽量使排序减少才是上策.

二、oracle temp表空间切换

查询temp表空间、创建temp2表空间5000m、切换临时表空间为 temp2、 删除临时表空间temp

oracle@xyy:/home/oracle> sqlplus / as sysdba

SQL*Plus: Release 11.2.0.3.0 Production on Fri Oct 11 14:18:44 2013

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> SELECT temp_used.tablespace_name, total - used as "Free", total as "Total", round(nvl(total - used, 0) * 100 / total, 3) "Free percent"
  2  FROM (SELECT tablespace_name, SUM(bytes_used)/1024/1024 used FROM GV$TEMP_SPACE_HEADER GROUP BY tablespace_name) temp_used,
  3  (SELECT tablespace_name, SUM(bytes)/1024/1024 total FROM dba_temp_files GROUP BY tablespace_name) temp_total
  4  WHERE temp_used.tablespace_name = temp_total.tablespace_name;

TABLESPACE_NAME                        Free      Total Free    percent
------------------------------ ---------- ---------- ------------
TEMP                                                           0         29            0

SQL> create temporary tablespace temp2 tempfile '/home/oracle/ora11g/oradata/xyy/temp02.dbf' size 5000M autoextend off;

Tablespace created.

SQL> alter database default temporary tablespace temp2;

Database altered.

SQL> drop tablespace temp;

Tablespace dropped.

SQL> SELECT temp_used.tablespace_name, total - used as "Free", total as "Total", round(nvl(total - used, 0) * 100 / total, 3) "Free percent"
  2  FROM (SELECT tablespace_name, SUM(bytes_used)/1024/1024 used FROM GV$TEMP_SPACE_HEADER GROUP BY tablespace_name) temp_used,
  3  (SELECT tablespace_name, SUM(bytes)/1024/1024 total FROM dba_temp_files GROUP BY tablespace_name) temp_total
  4  WHERE temp_used.tablespace_name = temp_total.tablespace_name;

TABLESPACE_NAME                      Free      Total           Free  percent
------------------------------ ---------- ---------- ------------
TEMP2                                              4998            5000                99.96

temp表空间的 tempfile 为 temp01.dbf, 删除 temp01.dbf
oracle@xyy:/home/oracle/ora11g/oradata/xyy> ll
total 3297068
-rw-r----- 1 oracle oinstall    9748480 Oct 11 14:31 control01.ctl
-rw-r----- 1 oracle oinstall    9748480 Oct 11 14:31 control02.ctl
-rw-r----- 1 oracle oinstall  328343552 Oct 11 14:31 example01.dbf
-rw-r----- 1 oracle oinstall  536871424 Oct 11 14:31 redo01.log
-rw-r----- 1 oracle oinstall  536871424 Oct 11 14:31 redo02.log
-rw-r----- 1 oracle oinstall  536871424 Oct 11 14:31 redo03.log
-rw-r----- 1 oracle oinstall  566239232 Oct 11 14:31 sysaux01.dbf
-rw-r----- 1 oracle oinstall  744497152 Oct 11 14:31 system01.dbf
-rw-r----- 1 oracle oinstall 5242888192 Oct 11 14:29 temp01.dbf
-rw-r----- 1 oracle oinstall 5242888192 Oct 11 14:21 temp02.dbf
-rw-r----- 1 oracle oinstall   99622912 Oct 11 14:31 undotbs01.dbf
-rw-r----- 1 oracle oinstall    5251072 Oct 11 14:31 users01.dbf

oracle@xyy:/home/oracle/ora11g/oradata/xyy>rm temp01.dbf

查询当前临时表空间

SQL> select username,temporary_tablespace from dba_users;

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
SYS                                      TEMP2
SYSTEM                              TEMP2
OUTLN                                TEMP2
MGMT_VIEW                      TEMP2
FLOWS_FILES                  TEMP2
MDSYS                                TEMP2
ORDSYS                             TEMP2
EXFSYS                               TEMP2
DBSNMP                             TEMP2
WMSYS                                TEMP2
APPQOSSYS                      TEMP2

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
APEX_030200                     TEMP2
OWBSYS_AUDIT                 TEMP2
ORDDATA                             TEMP2
CTXSYS                                TEMP2
ANONYMOUS                      TEMP2
SYSMAN                                TEMP2
XDB                                        TEMP2
ORDPLUGINS                     TEMP2
OWBSYS                               TEMP2
SI_INFORMTN_SCHEMA   TEMP2
OLAPSYS                              TEMP2

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
SCOTT                                    TEMP2
ORACLE_OCM                     TEMP2
XS$NULL                               TEMP2
BI                                             TEMP2
PM                                           TEMP2
MDDATA                                 TEMP2
IX                                             TEMP2
SH                                           TEMP2
DIP                                          TEMP2
OE                                           TEMP2
APEX_PUBLIC_USER        TEMP2

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
HR                                                         TEMP2
SPATIAL_CSW_ADMIN_USR          TEMP2
SPATIAL_WFS_ADMIN_USR           TEMP2

36 rows selected.

创建临时表空间temp为5000m、切换临时表空间为temp表空间、查询数据库临时表空间使用、删除临时表空间temp2

SQL> create temporary tablespace temp tempfile '/home/oracle/ora11g/oradata/xyy/temp01.dbf' size 5000M autoextend off;

Tablespace created.

SQL> alter database default temporary tablespace temp;

Database altered.

SQL> select username,temporary_tablespace from dba_users;

USERNAME                       TEMPORARY_TABLESPACE
------------------------------    ------------------------------
SYS                                        TEMP
SYSTEM                                TEMP
FLOWS_FILES                     TEMP
MDSYS                                  TEMP
ORDSYS                              TEMP
EXFSYS                               TEMP
DBSNMP                             TEMP
SCOTT                                 TEMP
WMSYS                               TEMP
ORACLE_OCM                   TEMP
APPQOSSYS                      TEMP

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
XS$NULL                            TEMP
APEX_030200                    TEMP
OWBSYS_AUDIT              TEMP
BI                                         TEMP
PM                                       TEMP
MDDATA                             TEMP
IX                                          TEMP
ORDDATA                          TEMP
CTXSYS                             TEMP
ANONYMOUS                   TEMP
SH                                       TEMP

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
OUTLN                                TEMP
DIP                                       TEMP
OE                                       TEMP
APEX_PUBLIC_USER               TEMP
HR                                       TEMP
SYSMAN                            TEMP
XDB                                    TEMP
SPATIAL_CSW_ADMIN_USR          TEMP
SPATIAL_WFS_ADMIN_USR          TEMP
ORDPLUGINS                                    TEMP
OWBSYS                                             TEMP

USERNAME                       TEMPORARY_TABLESPACE
------------------------------ ------------------------------
MGMT_VIEW                                   TEMP
SI_INFORMTN_SCHEMA             TEMP
OLAPSYS                                        TEMP

SQL> drop tablespace temp2;

Tablespace dropped.

oracle@xyy:/home/oracle/ora11g/oradata/xyy>ll
total 3297068
-rw-r----- 1 oracle oinstall    9748480 Oct 11 14:31 control01.ctl
-rw-r----- 1 oracle oinstall    9748480 Oct 11 14:31 control02.ctl
-rw-r----- 1 oracle oinstall  328343552 Oct 11 14:31 example01.dbf
-rw-r----- 1 oracle oinstall  536871424 Oct 11 14:31 redo01.log
-rw-r----- 1 oracle oinstall  536871424 Oct 11 14:31 redo02.log
-rw-r----- 1 oracle oinstall  536871424 Oct 11 14:31 redo03.log
-rw-r----- 1 oracle oinstall  566239232 Oct 11 14:31 sysaux01.dbf
-rw-r----- 1 oracle oinstall  744497152 Oct 11 14:31 system01.dbf
-rw-r----- 1 oracle oinstall 5242888192 Oct 11 14:29 temp01.dbf
-rw-r----- 1 oracle oinstall 5242888192 Oct 11 14:21 temp02.dbf
-rw-r----- 1 oracle oinstall   99622912 Oct 11 14:31 undotbs01.dbf
-rw-r----- 1 oracle oinstall    5251072 Oct 11 14:31 users01.dbf

oracle@xyy:/home/oracle/ora11g/oradata/xyy>rm temp02.dbf

Oracle 临时表空间 temp表空间切换的更多相关文章

  1. 数据库实例: STOREBOOK > 表空间 > 编辑 表空间: TEMP

    ylbtech-Oracle:数据库实例: STOREBOOK  >  表空间  >  编辑 表空间: TEMP 表空间  >  编辑 表空间: TEMP 1. 一般信息返回顶部 1 ...

  2. Oracle Temp表空间切换

    来源于:  http://www.2cto.com/database/201507/418564.html 一.TEMP表空间作用 临时表空间主要用途是在数据库进行排序运算.管理索引.访问视图等操作时 ...

  3. Oracle Temp 表空间切换

    一.TEMP表空间作用 暂时表空间主要用途是在数据库进行排序运算.管理索引.訪问视图等操作时提供暂时的运算空间,当运算完毕之后系统会自己主动清理.当 oracle 里须要用到 sort 的时候. PG ...

  4. 解决ora-01652无法通过128(在temp表空间中)扩展temp段的过程

    解决ora-01652无法通过128(在temp表空间中)扩展temp段的过程 昨天开发人员跟我说,执行一个sql语句后,大约花了10分钟,好不容易有一个结果,但是报了一个ora-01652错误,查阅 ...

  5. Oracle数据库之创建表空间与用户

    Oracle数据库之创建表空间与用户 一.创建表空间 基本语法表述: CREATE TABLESPACE tablespace_name [DATAFILE datafile_spec1 [,data ...

  6. 直接删除undo及temp表空间文件后的数据库恢复一例

    前几天,某用户研发找到我,说他们的研发库坏了,问我能恢复不?我问他们做了什么操作,一个小男孩儿说,看到空间满了,清除了点儿数据,我说是不是连数据库的文件也清除了,他说没有,他清除的是ORACLE_HO ...

  7. Oracle数据库自带表空间的详细说明

    1.SYSAUX表空间 SYSAUX表空间在Oracle Database 10g中引入,作为SYSTEM表空间的辅助表空间.以前一些使用独立表空间或系统表空间的数据库组件现在在SYSAUX表空间中创 ...

  8. Oracle数据库自带表空间

    需求:需要整理现场用户创建的表空间以及其存储数据,进行规范化管理.在整理用户现场建立的表空间时,需要排除掉非用户创建的表空间,所有首先需要那些表空间是用户创建的,那些是Oracle自带的. 本机测试建 ...

  9. ora-01652无法通过128(在temp表空间中)扩展temp段

    有两种错误:1.数据表空间不足 2.临时表空间不足 有两种原因:一是临时表空间空间太小,二是不能自动扩展. 分析过程:    既然是temp表空间有问题,那当然就要从temp表空间说起啦.首先要说明的 ...

随机推荐

  1. CodeForces 740C Alyona and mex

    构造. 比较骚的构造题.肯定可以构造出$min(R-L+1)$,只要$0$ $1$ $2$ $...$ $R-L$ $0$ $1$ $2$ $...$ $R-L$填数字即可,这样任意一段区间都包含了$ ...

  2. 洛谷P3942将军令

    啦啦啦,又是五月天的歌------ 题目传送门 那么来分析下题目;给定你一棵树,告诉你一支队伍能管辖的范围,求能覆盖整棵树的最少队伍数. 嘛,如果不会做,第一个想到的肯定是暴搜嘛,但是代码打起来肯定也 ...

  3. 初生牛犊:Windows下Anti-sandboxes技术探究

    由于云端杀毒的流行,病毒基本上都会加上anti-sandboxes手段来躲避沙箱的探测,在这点上,由于一些原因,最近也一直在做这一块,所以算是总结一下吧. 一:什么是沙箱以及其他: 根据受控环境中的观 ...

  4. VM虚拟机安装kali linux

    点击文件,新建虚拟机新建一个虚拟机 点击后出现这个,选择典型 点击下一步,然后选择安装程序光盘映像文件(iso),然后浏览,找到你下载的镜像 点击下一步,选择linux,选择最高Debian版本的,6 ...

  5. CentOS7系统防火墙开关、状态与自启

    首先需要说明的是CentOS7使用的是firewalld.service,而不是iptables.service [xf@xuexi ~]$ systemctl status firewalld.se ...

  6. 第5天:Ansible-Playbook

    Ansible中的每个模块专注于某一方面的功能.虽然每个模块实现的功能都比较简单,但是,将各个模块结合起来就可以实现比较复杂的功能.在Ansible中,将各个模块组合起来的文件是一个YAML格式的配置 ...

  7. 子查询在DELETE语句中的应用

    子查询在DELETE 中唯一可以应用的位置就是WHERE 子句,使用子查询可以完成复杂的数据删除控制.其使用方式与SELECT 语句中的子查询基本相同,而且也可以使用相关子查询等高级的特性.下面的SQ ...

  8. 初见Python<3>:字符串

    1.格式化字符串 %s代表的是格式化字符串,或者说为字符串进行占位操作. 如果一个变量本身不是字符串,则会自动被转化为字符串. 使用%f格式化浮点数.同时也可以提供需要的精度,如%.3f,即保留3位小 ...

  9. SD 一轮集训 day4 圣城鼠

    非常强的构造题. 很显然的是我们要构造一个类似菊花图的东西,因为这样的话两点之间路径的点数会非常少,很容易满足第二个条件. 但是因为直接菊花图的话会不满足第一个条件,,,所以我们可以构造一个类菊花图. ...

  10. codevs 1349 板猪的火车票

    1349 板猪的火车票  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题目描述 Description 奸商zn(请勿对号入座)开办了一家火车公司,弱弱的板猪 ...