ORA-01114错误原因及解决方法(临时表空间坏掉、或者满了)

今天应用服务器后台报一下错误:

java.sql.SQLException: ORA-01114: 将块写入文件 201 时出现 IO 错误 (块 # 1015305)
ORA-27069: skgfdisp: 尝试在文件范围外执行 I/O
OSD-04026: 传递的参数无效。 (OS 1015311)
ORA-01114: 将块写入文件 201 时出现 IO 错误 (块 # 1015305)
ORA-27069: skgfdisp: 尝试在文件范围外执行 I/O
OSD-04026: 传递的参数无效。 (OS 1015311)

在网上找资料说,是数据库临时表空间满了或者坏掉了。

查询临时表空间的大小
select name, bytes/1024/1024 as "大小(M)" from v$tempfile order by bytes;

看到系统中最大数据文件D:\ORACLE\ORADATA\TFJS\TEMP.DBF 大小为8G,初步估计是temp表空间无法扩展的原因。

解决办法:

1、查询该用户下的默认临时表空间
select * from database_properties where property_name='DEFAULT_TEMP_TABLESPACE';
2、创建新的临时表空间
create temporary tablespace temp01 tempfile 'D:\ORACLE\ORADATA\TFJS\TEMP01.DBF'
size 1000M autoextend on;
3、修改默认表空间
alter database default temporary tablespace temp01;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值