热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle临时表之临时表空间组(TTG)

Oracle临时表之临时表空间组(TTG)环境:www.2cto.com[sql]sys@ORCL>select*fromv$version;BANNER----------------------------------------------------------------OracleDatabase10

Oracle临时表之临时表空间组(TTG)
 
环境:   www.2cto.com  
[sql] 
sys@ORCL> select * from v$version;  
  
BANNER  
----------------------------------------------------------------  
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod  
PL/SQL Release 10.2.0.1.0 - Production  
CORE    10.2.0.1.0      Production  
TNS for Linux: Version 10.2.0.1.0 - Production  
NLSRTL Version 10.2.0.1.0 - Production  
 
          在Oracle中,temp犹如win下的虚拟内存和unix下的swap分区 
          TTG是10g引入的概念,目的就是为了减少IO竞争
          只有临时表空间可以定组,普通的表空间无法定组
          对待TTG就像对待单个临时表空间一样,无甚区别
          TTG本身不能被创建,它随着temp的加入而创建,temp的脱离而删除
[sql] 
alter tablespace temp tablespace group '';  
 
          我们知道一个用户只能使用一个临时表空间,而一个临时表空间中只存在一个临时段
          当一个session在使用临时段时,其他session再请求临时段时需要等到拥有该临时段的session使用完毕之后才能使用
          而临时表空间组的出现大大改善了同一用户并发session对临时段的争夺
          因为临时表空间组的出现使用户能够使用多个临时表空间了
 
          下面作个简单测试
[sql] 
sys@ORCL> create temporary tablespace temp1 tempfile size 20M tablespace group tempg;  
  
Tablespace created.  
  
sys@ORCL> create temporary tablespace temp2 tempfile size 20M tablespace group tempg;  
  
Tablespace created.  
  
sys@ORCL> create temporary tablespace temp3 tempfile size 20M tablespace group tempg;  
  
Tablespace created.  
  
sys@ORCL> alter database default temporary tablespace tempg;  
  
Database altered.  
  
sys@ORCL> drop tablespace temp;  
  
Tablespace dropped. 
  
sys@ORCL> select * from dba_tablespace_groups;  
  
GROUP_NAME                     TABLESPACE_NAME  
------------------------------ ------------------------------  
TEMPG                          TEMP1  
TEMPG                          TEMP2  
TEMPG                          TEMP3  
  
sys@ORCL> alter user hr temporary tablespace tempg;  
  
User altered.  
  
sys@ORCL> conn hr/hr  
Connected.  
  
hr@ORCL> create table t as select * from dba_objects;  
  
Table created.  
  
hr@ORCL> begin  
  2        for i in 1..4  
  3        loop  
  4          insert into t select * from t;  
  5        end loop;  
  6        commit;  
  7      end;  
  8  /  
  
PL/SQL procedure successfully completed.  
  
hr@ORCL> create table tt as select * from t;  
  
Table created.  
 
        分别打开两个session以用户hr登录对表t和tt同时进行排序,之后通过如下查询监视对临时表空间的使用情况
[sql] 
sys@ORCL> select operation_type ,sql_id , tablespace,tempseg_size,number_passes from v$sql_workarea_active;  
  
OPERATION_ SQL_ID        TABLESPACE                     TEMPSEG_SIZE NUMBER_PASSES  
---------- ------------- ------------------------------ ------------ -------------  
SORT (v2)  b7q3tuybvatbt    temp1                                          0  
SORT (v2)  cn7ucn092pg8s    temp3                                          0  
  
sys@ORCL> select sql_text from v$sql where sql_id in (select sql_id from v$sql_workarea_active);  
  
SQL_TEXT  
---------------------------------------------  
select object_id from t order by object_id desc  
  
select object_id from tt order by object_id desc  
 
          发现来自同一用户hr的不同session同时排序时使用了同一临时表空间组内的不同临时表空间
   这样大大减少了之前同一用户只能使用一个临时表空间而产生的请求临时段的等待时间.
 

推荐阅读
  • Linux系统时间与本地时间不同步解决办法
    改变/etc/目录下的localtime文件,既可以改变当前的时 ... [详细]
  • linux里的子系统:linux内核里把某种功能类型的源码划分成一个源码模块,也就是把一类相关的源文件集中起来封装出的功能模块.如内核源码目录下”driversinput”里就 ... [详细]
  • 前期Linux环境准备1.修改Linux主机名2.修改IP3.修改主机名和IP的映射关系4.关闭防火墙5.ssh免登陆6.安装JDK,配置环境变量等集群规划主机 IP安装软件运行进 ... [详细]
  • awk if 包含_千面 awk | Linux 中国
    awk命令不仅提供了简单的输入字符串筛选功能,还包含提取数据列、打印简单文本、筛选内容——甚至做一些数学计算。--SandraHenry-stockerawk命令不仅 ... [详细]
  • 01windows下载与安装neo4j
    1。因为neo4j的官网总是在变,所以下载地址有时候找不到neo4j3.1.0Releases官方下载链接windows64ziphttps:neo4j.comar ... [详细]
  • php培训讲师需要掌握哪些技能
    常见问题php常见问题腾讯视频解析源码,Ubuntu初始大小,云桌面启动不了tomcat,负载均衡爬虫,学生综合管理系统php,马鞍山seo网络营销推广lzw一个好的php培训讲师 ... [详细]
  • 本文整理了Java中org.eclipse.swt.graphics.Transform.init()方法的一些代码示例,展示了Transform.init ... [详细]
  • 安装hadoop2.9.2jdk1.8centos7
    安装JDK1.8查看JDK1.8的安装https:www.cnblogs.comTJ21p13208514.html安装hadoop上传hadoop下载hadoop地址http:m ... [详细]
  • 分享第二套C语言源代码合集,包括上百个C语言经典代码下载地址:http:download.csdn.netdetailcaozhy9919273 ... [详细]
  • 1:在Ubuntu中使用“apt-getinstall+app”命令可以在线安装绝大部分软件包,在高版本的Ubuntu中,apt-get可以简写为apt。2:sudo命令表示临时切 ... [详细]
  • ICE(InternetCommunicationsEngine)是一个为现实中程序员而写的中间件平台。作为一个高性能的互联网通信平台,ICE包含了很多分层的服务和插 ... [详细]
  • 编辑iptables配置文件,将文件内容更改为如下,则具备了ip地址白名单功能#vimetcsysconfigiptables打开配置文件, ... [详细]
  • Docker的网络实现其实就是利用了Linux上的网络命名空间和虚拟网络设备(特别是vethpair).基本原理首先,要 ... [详细]
  • Android休眠唤醒机制
    有四种方式可以引起休眠①在wake_unlock()中,如果发现解锁以后没有任何其他的wakelock了,就开始休眠②在定时器到时间以后,定时器的回调函 ... [详细]
  • docker制作打包镜像说明:本文档基于CentSo7系统,ubuntu系统只是部分命令不同,制作过程相同。[顺便说一句:D ... [详细]
author-avatar
猪猪看看新闻2011
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有