自己的网站怎么做淘宝联盟,京东的网站是哪家公司做的,新闻热点事件素材,谁能分享个小网站啊临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间#xff0c;当运算完成之后系统会自动清理。当oracle里需要用到sort的时候#xff0c;PGA中sort_area_size大小不够时#xff0c;将会把数据放入临时表空间里进行排序#xff0c;同…临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间当运算完成之后系统会自动清理。当oracle里需要用到sort的时候PGA中sort_area_size大小不够时将会把数据放入临时表空间里进行排序同时如果有异常情况的话也会被放入临时表空间,正常来说在完成Select语句、create index等一些使用TEMP表空间的排序操作后Oracle是会自动释放掉临时段的。但有些有侯我们则会遇到临时段没有被释放TEMP表空间几乎满的状况甚至是我们重启了数据库仍没有解决问题。排序是很耗资源的Temp表空间满了,关键是优化你的语句尽量使排序减少才是上策.Temp表空间满时的处理方法一、修改参数(仅适用于8i及8i以下版本)修改一下TEMP表空间的storage参数让Smon进程观注一下临时段从而达到清理和TEMP表空间的目的。SQLalter tablespace temp increase 1;SQLalter tablespace temp increase 0;二、kill session1、 使用如下语句a查看一下认谁在用临时段SELECT se.username, se.SID, se.serial#, se.sql_address, se.machine, se.program, su.TABLESPACE,su.segtype, su.CONTENTS FROM v$session se, v$sort_usage suWHEREse.saddrsu.session_addr2、kill正在使用临时段的进程SQLAlter system kill session sid,serial#;3、把TEMP表空间回缩一下SQLAlter tablespace TEMP coalesce;注这处方法只能针对字典管理表空间(Dictionary Managed Tablespace)。于本地管理表空间(LMT:Local Managed Tablespace)不需要整理的。9i以后只能创建本地管理的表空间。CREATE TABLESPACE TEST DATAFILE D:\TEST01.dbf SIZE 5M EXTENT MANAGEMENT DICTIONARYCREATE TABLESPACE TEST DATAFILE D:\TEST01.dbf SIZE 5M EXTENT MANAGEMENT LOCAL;三、重启数据库库库重启时Smon进程会完成临时段释放,TEMP表空间的清理操作不过很多的时侯我们的库是不允许down的,所以这种方法缺少了一点的应用机会不过这种方法还是很好用的。四、使用诊断事件的一种方法,也是最有效的一种方法1、 确定TEMP表空间的ts#SQLselect ts#, name from sys.ts$ ;TS# NAME---------- ------------------------------0 SYSTEM1 UNDOTBS12 SYSAUX3 TEMP4 USERS5 UNDOTBS22、执行清理操作SQLalter session set events immediate trace name DROP_SEGMENTS level 4 ;说明temp表空间的TS# 为 3, So TS# 1 4重建TEMP 表空间Temporary tablespace是不能直接drop默认的临时表空间的不过我们可以通过以下方法来做。准备查看目前的Temporary TablespaceSQLselect name from v$tempfile;NAME———————————————————————D:\ORACLE\ORADATA\TEST\TEMP01.DBFSQLselect username,temporary_tablespace from dba_users;USERNAME TEMPORARY_TABLESPACE------------------------------ ------------------------------MGMT_VIEW TEMPSYS TEMPSYSTEM TEMPDBSNMP TEMPSYSMAN TEMP1.创建中转临时表空间create temporary tablespace TEMP1 TEMPFILE E:\ORACLE\ORADATA\ORCL\temp02.DBF SIZE 512M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;2.改变缺省临时表空间 为刚刚创建的新临时表空间temp1alter database default temporary tablespace temp1;3.删除原来临时表空间drop tablespace temp including contents and datafiles;4.重新创建临时表空间create temporary tablespace TEMP TEMPFILE E:\ORACLE\ORADATA\ORCL\temp01.DBF SIZE 512M REUSE AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;5.重置缺省临时表空间为新建的temp表空间alter database default temporary tablespace temp;6.删除中转用临时表空间drop tablespace temp1 including contents and datafiles;7.如果有必要那么重新指定用户表空间为重建的临时表空间alter user arbor temporary tablespace temp;查看表空间语句不过查不出Temp表空间SELECT UPPER(F.TABLESPACE_NAME) 表空间名,D.TOT_GROOTTE_MB 表空间大小(M),D.TOT_GROOTTE_MB - F.TOTAL_BYTES 已使用空间(M),TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,2),990.99) 使用比,F.TOTAL_BYTES 空闲空间(M),F.MAX_BYTES 最大块(M)FROM (SELECT TABLESPACE_NAME,ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTESFROM SYS.DBA_FREE_SPACEGROUP BY TABLESPACE_NAME) F,(SELECT DD.TABLESPACE_NAME,ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MBFROM SYS.DBA_DATA_FILES DDGROUP BY DD.TABLESPACE_NAME) DWHERED.TABLESPACE_NAMEF.TABLESPACE_NAMEORDER BY 4 DESC以上就是Oracle临时表空间的处理方法希望会对读者带来帮助。【编辑推荐】【责任编辑赵鹏 TEL(010)68476606】