oracle将块写入文件 203 时出现 IO 错误

问题如标题,我的情况是执行一个SQL查询,left join的东西比较多,结果时间稍微长一些,然后就报错了。

1.遇到这种问题,先检查数据库所在服务器的磁盘空间够不够,很有可能是这个原因。

2.如果是够的,那么有可能是表空间已经占满了。

现在用SQL查询一下:

select property_name,property_value from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';
 

SELECT D.TABLESPACE_NAME,SPACE "SUM_SPACE(M)",BLOCKS SUM_BLOCKS, 
USED_SPACE "USED_SPACE(M)",ROUND(NVL(USED_SPACE,0)/SPACE*100,2) "USED_RATE(%)",
NVL(FREE_SPACE,0) "FREE_SPACE(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(+)

看下总共多少,用了多少,还剩多少,这是调之后的,之前已经占满了。

 

select * from dba_temp_files where tablespace_name='TEMP';   看下文件名

最后执行(我是调到100M 具体情况看个人)

ALTER DATABASE TEMPFILE '/data/oracle/oradata/orcl11g/temp01.dbf' RESIZE 100M;

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值