近日在维护ora10g数据库时发现临时表空间的数据文件temp.dbf从最初的512m猛增到5G,严重占用了磁盘空间。经过多次努力,总于解决问题,现将查询到的临时表空间的相关资料以及处理方法简要归纳如下:1、临时表空间的作用:
临时表空间主要用途是在数据库进行排序运算、管理索引、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
当临时表空间不足时,表现为运算速度异常的慢,并且临时表空间迅速增长到最大空间(扩展的极限),并且一般不会自动清理了。
2、迅速增长的原因:
一般原因是sql算法不正确,可能导致出现了迪卡尔积。
另外一个原因是视图的创建问题。Oracle数据库中多张表联合查询时,极限的表单数量为4张,一般将以为3张!有时需要大于4张表联合查询时,怎么办呢?可以建立子视图:
如view1(联合table0,table1,table2),view2(联合table0,table3,table4),view3(联合table0,table5,table6)
然后将view1、view2、view3联合成view4。这样可以解决临时表空间迅速增长的问题!
3、临时表空间异常增涨后的处理
临时表空间异常暴涨后,极大的占用了磁盘空间,同时会影响普通查询的速度,以下方法可以达到清理临时表空间数据文件temp.dbf的大小
方法一、在系统不繁忙的时候,执行命令缩减临时表空间数据文件的尺寸
alter database tempfile 'D:\ORACLE\PRODUCT\10.1.\ORADATA\ORCL\TEMP01.DBF' resize 10M;
方法二、
a、创建中转临时表空间
create temporary tablespace temp2 tempfile 'd:\oracle\product\10.2.0\oradata\ncpec\temp02.dbf' size 512m reuse autoextend on next 640k maxsize unlimited
b、改变缺省临时表空间为刚刚创建的新临时表空间temp2
alter database default temporary tablespace temp2;
c、删除原有的临时表空间以及数据文件
drop tablespace temp including contents and datafiles;
d、重新创建临时表空间
create temporary tablespace temp tempfile 'd:\oracle\product\10.2.0\oradata\ncpec\temp01.dbf' size 512m reuse autoextend on next 640k maxsize unlimited;
e、重置缺省临时表空间为新建的temp表空间
alter database default temporary tablespace temp;
f、删除中转用临时表空间
drop tablespace temp2 including contents and datafiles;
4、临时表空间使用注意:
a、临时表空间是用于在进行排序操作(如大型查询,创建索引和联合查询期间存储临时数据),每个用户都可以有一个临时表空间
b、对于大型操作频繁,(大型查询,大型分类查询,大型统计分析等),应指定单独的临时表空间,以方便管理
c、分配用户单独临时表空间,一般是针对大型产品数据库,OLTP数据库,数据库仓库。对于小型产品不需要单独制定临时表空间,使用默认临时表空间
注:如果临时表空间异常增涨很快,则要考虑是否应用的sql语句产生了笛卡儿积,可以通过stactpack 进行分析查出问题所在,从而保证数据库的正常运行
分享到:
相关推荐
利用ORA文件恢复数据库,Oracle数据库灾难恢复
Oracle11g安装教程,无法上传安装包,请去官网下载,红帽5和红帽6的安装教程相差不大。
Ora 10G SQLPLUS_Ref.chm
NULL 博文链接:https://springlin.iteye.com/blog/1520668
详细介绍如何正常删除Oracle 数据库表空间数据文件,OFFLINE和OFFLINE DROP的区别,OS级别删除了数据文件后的恢复,删除数据库表空间数据文件演示示例
oracle表空间不足报错的解决 。。。。。。。。。。。。。。。。。。。。。。
Ora_10G_DBA_Reference
Oracle中的【ORA-01536表空间限额不够】的解决方法 错误场景: 今天在SMS短信数据库一个功能运行时候遇到了ORA-01536错误,具体如下: --执行一条插入语句 INSERT INTO SMS_MASTER (CREATE_DATE, TYPE_NAME, SMS_...
ogg112101_ggs_Windows_x86_ora10g_32bit
ORACLE10G的非常好的学习手册,主要是基于ORACLE系统管理方面的内容
使用过程Oracle 表空间不足时,详细处理办法
ggs_HPUX_pa_ora10g_64bit.zip
ogg,Oracle Golden Gate,数据库同步,ogg112101_fbo_ggs_Linux_x64_ora11g_64bit
客户端进行连接的时候,系统不定期出现ora-12520,ora-12516的连接问题, 问题解决方案建议: 1、增加process和session的连接数。 2、检查连接的应用,是不是有没有释放的连接。 3、将修改参数local_listener中的vip为...
图文详细介绍oracle10g安装过程,详细介绍oracle基本数据库操作命令,安全管理等
ora10g客户端 *********************************************************************** Fatal NI connect error 12560, connecting to: (DESCRIPTION=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle)(ARGV0=oracle...
linux安装+ora10g安装配置非常详细的截图步骤
Ora 10G SQL Reference.chm
ogg112101_ggs_Windows_x64_ora11g_64bit.zip 还有 linux版本的,但是因为文件大于60mb,不能上传,有需要请联系。
ogg112101_fbo_ggs_Linux_x86_ora10g_32bit 版本11.2.1.0.1 目标为oracle10g 32位