oracle 删除空间不足,oracle学习笔记 temp空间不足不能自动释放的解决办法

1、先查看表空间SELECT D.TABLESPACE_NAME "数据库文件名称",

SPACE || 'M' "总空间(M)",

BLOCKS "总BLOCKS",

SPACE - NVL (FREE_SPACE, 0) || 'M' "已用空间(M)",

ROUND ( (1 - NVL (FREE_SPACE, 0) / SPACE) * 100, 2) || '%'   "已用率(%)",

FREE_SPACE || 'M' "空闲空间(M)"

FROM (  SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE,

SUM (BLOCKS) BLOCKS

FROM DBA_DATA_FILES

GROUP BY TABLESPACE_NAME) D,

(  SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / (1024 * 1024), 2)

FREE_SPACE

FROM DBA_FREE_SPACE

GROUP BY TABLESPACE_NAME) F

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)

UNION ALL

--如果有临时表空间

SELECT D.TABLESPACE_NAME,

SPACE || 'M' "总空间(M)",

BLOCKS SUM_BLOCKS,

USED_SPACE || 'M' "已用空间(M)",

ROUND (NVL (USED_SPACE, 0) / SPACE * 100, 2) || '%'

"已用率(%)",

NVL (FREE_SPACE, 0) || 'M' "空闲空间(M)"

FROM (  SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES) / (1024 * 1024), 2) SPACE,

SUM (BLOCKS) BLOCKS

FROM DBA_TEMP_FILES

GROUP BY TABLESPACE_NAME) D,

(  SELECT TABLESPACE_NAME,

ROUND (SUM (BYTES_USED) / (1024 * 1024), 2)

USED_SPACE,

ROUND (SUM (BYTES_FREE) / (1024 * 1024), 2)

FREE_SPACE

FROM V$TEMP_SPACE_HEADER

GROUP BY TABLESPACE_NAME) F

WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME(+)

ORDER BY 1;

2、再查看temp文件位置SELECT B.NAME TABLESPACE_NAME, A.NAME DATAFILE_NAME, ROUND(A.BYTES / (1024 * 1024), 2) "表空间大小"

FROM V$TEMPFILE A,V$TABLESPACE B

WHERE A.TS# = B.TS#

3、创建temp2 文件CREATE TEMPORARY TABLESPACE TEMP02

TEMPFILE 'D:/APP/ADMINISTRATOR/ORADATA/ORCL/TEMP02.DBF'

SIZE 1024M AUTOEXTEND ON NEXT 30720M MAXSIZE UNLIMITED;

-- size 是固定大小 autoextend on next 为最大扩展大小

4、指定TEMP文件默许文件ALTER DATABASE DEFAULT TEMPORARY TABLESPACE TEMP02;

5、查看是否有会话链接SELECT A.USERNAME,A.SID,A.SERIAL#,A.SQL_ADDRESS,A.MACHINE,

A.PROGRAM,B.TABLESPACE,B.SEGTYPE,B.CONTENTS

FROM V$SESSION A,V$SORT_USAGE B

WHERE A.SADDR = B.SESSION_ADDR

6、删除原来的TEMP文件DROP TABLESPACE TEMP   including contents and datafiles cascade constraint

参考

http://blog.csdn.net/lmalds/article/details/33725657

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值