Oracle 临时表空间 temp表空间切换
一.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表空间切换的更多相关文章
- 数据库实例: STOREBOOK > 表空间 > 编辑 表空间: TEMP
ylbtech-Oracle:数据库实例: STOREBOOK > 表空间 > 编辑 表空间: TEMP 表空间 > 编辑 表空间: TEMP 1. 一般信息返回顶部 1 ...
- Oracle Temp表空间切换
来源于: http://www.2cto.com/database/201507/418564.html 一.TEMP表空间作用 临时表空间主要用途是在数据库进行排序运算.管理索引.访问视图等操作时 ...
- Oracle Temp 表空间切换
一.TEMP表空间作用 暂时表空间主要用途是在数据库进行排序运算.管理索引.訪问视图等操作时提供暂时的运算空间,当运算完毕之后系统会自己主动清理.当 oracle 里须要用到 sort 的时候. PG ...
- 解决ora-01652无法通过128(在temp表空间中)扩展temp段的过程
解决ora-01652无法通过128(在temp表空间中)扩展temp段的过程 昨天开发人员跟我说,执行一个sql语句后,大约花了10分钟,好不容易有一个结果,但是报了一个ora-01652错误,查阅 ...
- Oracle数据库之创建表空间与用户
Oracle数据库之创建表空间与用户 一.创建表空间 基本语法表述: CREATE TABLESPACE tablespace_name [DATAFILE datafile_spec1 [,data ...
- 直接删除undo及temp表空间文件后的数据库恢复一例
前几天,某用户研发找到我,说他们的研发库坏了,问我能恢复不?我问他们做了什么操作,一个小男孩儿说,看到空间满了,清除了点儿数据,我说是不是连数据库的文件也清除了,他说没有,他清除的是ORACLE_HO ...
- Oracle数据库自带表空间的详细说明
1.SYSAUX表空间 SYSAUX表空间在Oracle Database 10g中引入,作为SYSTEM表空间的辅助表空间.以前一些使用独立表空间或系统表空间的数据库组件现在在SYSAUX表空间中创 ...
- Oracle数据库自带表空间
需求:需要整理现场用户创建的表空间以及其存储数据,进行规范化管理.在整理用户现场建立的表空间时,需要排除掉非用户创建的表空间,所有首先需要那些表空间是用户创建的,那些是Oracle自带的. 本机测试建 ...
- ora-01652无法通过128(在temp表空间中)扩展temp段
有两种错误:1.数据表空间不足 2.临时表空间不足 有两种原因:一是临时表空间空间太小,二是不能自动扩展. 分析过程: 既然是temp表空间有问题,那当然就要从temp表空间说起啦.首先要说明的 ...
随机推荐
- 洛谷P2590 [ZJOI2008] 树的统计 [树链剖分]
题目传送门 树的统计 题目描述 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w. 我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t ...
- 03、NavMesh--导航网格寻路
一.概述: NavMesh是3D游戏世界中用于实现动态物体自动寻路的一种技术,他将游戏场景中复杂的结构组织关系简化为带有一定信息的网格, 进而在这些网格的基础上通过一些列的计算来实现自动寻路. 二.简 ...
- UTF-8字符「EF BF BD」-备胎
在众多的utf-8码点值中,除了ascii,你还应该记住「EF BF BD」,因为它是很多编程语言以及库中的备胎,即无效的码点值在编码的时候会默认用这个码点值进行替换,即utf-8中的超级「备胎」(R ...
- 【BZOJ 2118】 2118: 墨墨的等式 (最短路)
2118: 墨墨的等式 Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求 ...
- 20172333 2017-2018-2 《Java程序设计》第8周学习总结
20172333 2017-2018-2 <Java程序设计>第8周学习总结 教材学习内容 多态性应用可以随时间变化指向不同类型的对象. 多态性应用,方法的引用与方法的定义代码的绑定在运行 ...
- 十一. 图形、图像与多媒体5.Graphics2D类的绘图方法
Java语言在Graphics类提供绘制各种基本的几何图形的基础上,扩展Graphics类提供一个Graphics2D类,它拥用更强大的二维图形处理能力,提供.坐标转换.颜色管理以及文字布局等更精确的 ...
- 使用 Google Code Prettify 实现代码高亮
今天这篇文章主要讲述使用 google-code-prettify 来实现代码的高亮显示,以前我使用 highlight.js 来实现文章中代码的高亮显示. prettify 非常小巧且配置简单,使用 ...
- CentOS 6.9修改网卡名eth1为eth0
vi /etc/udev/rules.d/70-persistent-net.rules 把NAME="eth1"修改为NAME="eth0",并将多余的记录删 ...
- Android Content Provider Security(转)
四大组件之一-content provider安全详解 原帖地址:http://drops.wooyun.org/tips/4314 0x00 科普 内容提供器用来存放和获取数据并使这些数据可以被所有 ...
- Python结合Shell/Hadoop实现MapReduce
基本流程为: cat data | map | sort | reduce cat devProbe | ./mapper.py | sort| ./reducer.py echo "foo ...