oracle 临时表内存不足,ORACLE数据库临时表空间不足通用解决方案

ORACLE数据库临时表空间不足通用解决方案

原因分析:

1.ORACLE临时表空间是由oracle数据库定时对表空间进行释放,但也会出现表空间释放不及时的现象。这属于oracle问题,无参数进行配置来解决,

只能通过重定向临时表空间来释放空间。

2.随着业务量的增大,ORACLE临时表空间需求会增大,需新增数据文件。

解决方案:

1.普通临时表空间的数据文件扩展一般设置无限制(即最大为32G),如不够有时需要再再新增一个数据文件。

2.如果临时表空间使用到32G或更多,

则可以通过重定向临时表空间以来达到临时表空间资源释放。

3.相应的措施如下所示:

3.1

(1).查找表空间对应的数据文件(以EAS_T_FANHUA_STANDARD临时表空间为例)

select file_name,tablespace_name from dba_temp_files where tablespace_name='EAS_T_FANHUA_STANDARD'

(2).查看此路径下的数据文件/PATH/FILENAME(为上面sql查出来的filename的值)大小,如果小于32G,让数据文件进行自动扩展,扩展到32G。

alter DATABASE tempfile '/PATH/FILENAME' autoextend on next 200M maxsize unlimited

(3).如果数据文件为32G 则需加个数据文件

alter tablespace EAS_T_FANHUA_STANDARD add tempfile '/PATH/FILENAME' size 100m autoextend on next 100M maxsize unlimited

3.2

(1).重新建一个临时表空间,重定向表空间的方法来释放表空间,如下所示:如重建的临时表空间名为EAS_T_EAS59_STANDARD,

临时数据文件的存放路径为D:\ORACLE11G\ORADATA\ORACLE10G\,临时数据文件为EAS_T_EAS59_STANDARD.ORA,EAS账套用户为EASDB,

脚本如下所示:CREATE TEMPORARY TABLESPACE "EAS_T_EAS59_STANDARD" TEMPFILE 'D:\ORACLE11G\ORADATA\ORACLE10G\EAS_T_EAS59_STANDARD.ORA'

SIZE 500M AUTOEXTEND ON NEXT 500M MAXSIZE UNLIMITED; --新建一个临时表空间

ALTER USER EASDB TEMPORARY TABLESPACE EAS_T_EAS59_STANDARD; --表空间重定向

drop tablespace EAS_T_EAS59_STANDARN including contents and datafiles; --将之前的临时表空间删除

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值