oracle ORA-01114、ORA-27067错误解决方法
今天有朋友问到如下一则案例,ora-01114,ora-27067以及osd-04026错误同时出现:
*** action name:() 2009-04-01 09:31:00.762
*** module name:(jdbc thin client) 2009-04-01 09:31:00.762
*** service name:(sys$users) 2009-04-01 09:31:00.762
*** session id:(145.9) 2009-04-01 09:31:00.762
*** 2009-04-01 09:31:00.762
ksedmp: internal or fatal error
ora-01114: 将块写入文件 201 时出现 io 错误 (块 # 492)
ora-27067: i/o 缓冲区的大小无效
osd-04026: invalid parameter passed. (os 1318912)
ora-01114: 将块写入文件 201 时出现 io 错误 (块 # 492)
ora-27067: i/o 缓冲区的大小无效
osd-04026: invalid parameter passed. (os 1318912)
ora-01114: 将块写入文件 201 时出现 io 错误 (块 # 492)
ora-27067: i/o 缓冲区的大小无效
osd-04026: invalid parameter passed. (os 1318912)
ora-01114: 将块写入文件 201 时出现 io 错误 (块 # 9)
ora-27067: i/o 缓冲区的大小无效
osd-04026: invalid parameter passed. (os 1318912)
no current sql statement being executed.
这个错误在9i的某些版本中,是因为文件大小超越了os的限制时会出现的一个问题,多数出现在windows平台上。
metalink上的notes:317174.1,记录了一个类似的问题,这是oracle server - enterprise edition - version: 9.2.0.1.0 microsoft windows (32-bit)上的一个bug:
its a bug specific to nt platform only. cannot autoextend to 4gb boundary,this bug is fixed in 9203.
317174.1 记录的错误信息如下:
ora-283: recovery session canceled due to errors
ora-1115: io error reading block from file 11 (block # 204802)
ora-1110: data file 11: 'e:oracleora92borgmaximo.ora'
ora-27069: skgfdisp: attempt to do i/o beyond the range of the file
osd-4026: invalid parameter passed. (os-204802)
但是这个数据库是64位windows上的10.2.0.4,问题出现在临时表空间文件上。
查询过几个相关的问题原因都是类似的:ctas处理大批量的数据导致异常。
这个问题的ctas sql有600多个case when判断,sql文本有47k,强烈用户建议改写sql。
推荐阅读
-
oracle11gR2使用exp导出命令时报EXP-00011错误的解决方法
-
Oracle数据库TNS常见错误的解决方法汇总
-
ORACLE出现错误1033和错误ORA-00600的解决方法
-
oracle ORA-01114、ORA-27067错误解决方法
-
plsql连接oracle数据库报ora 12154错误解决方法
-
oracle 11g em重建报唯一约束错误解决方法
-
Oracle安装遇到INS-30131错误的解决方法
-
Oracle 11g安装错误提示未找到wfmlrsvcapp.ear的解决方法
-
Oracle错误ORA-01033问题及解决方法
-
Oracle删除数据报ORA 02292错误的巧妙解决方法