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。

(0)

相关推荐

  • Oracle数据库并行查询出错的解决方法

    Oracle的并行查询是使用多个操作系统级别的Server Process来同时完成一个SQL查询,本文讲解Oracle数据库并行查询出错的解决方法如下: 1.错误描述 ORA-12801: 并行查询服务器P007中发出错误信号 ORA-01722:无效数字 12801.00000 -"error signaled in parallel query server %s" *Cause: A parallel query server reached an exception cond

  • phpStudy配置多站点多域名方法及遇到的403错误解决方法

    此文不太适合一点不懂多站点多域名的.适合于碰到难处了,一点就透.ok.比较随意. 首先,打开站点域名管理,配置如下,网站域名和目录都可以自己设置,端口重设一个,不要是80了,然后先新增再保存. 打开配置文件vhosts,会看到新增了801端口的东西 在配置文件http.conf中添加 ,在80后添加新端口号 然后在hosts文件中配置下,127.0.0.1 www.aaa.com 再就是,玛德GG了,出现forbidden了,403,没有访问权限. 废了很大劲终于找到了解决方案,下面先复制解决方

  • 502 bad gateway是什么意思 502 bad gateway错误解决方法

    您可以尝试清除浏览器缓存 访问一下你的FTP看是否可以登陆 成功解决502 Bad Gateway错误 今天登陆博客,显示502 bad gateway,NGINX最烦人的地方就是经常会出现这个错误,由于我并不打算在技术上花费过多的时间,所以一般是遇到了相关问题,通过搜索引擎解决后即可,不会去深究.废话不多说,说说我的坎坷经历. 首先,我重启了服务器,可是重启了好几次,都无效,然后去Google搜索了下502 bad gateway,出来了很多的网页,筛选后进入http://lnmp.org/f

  • oracle表被锁定的完美解决方法

    解决办法: ora-00031:session marked for kill处理oracle中杀不掉的锁一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库.现在提供一种方法解决这种问题,那就是在ORACLE中杀不掉的,在OS一级再杀. 下面的语句用来查询哪些对象被锁: select object_name,machine,s.sid,s.serial# from v$locked_object l,dba_obj

  • Python出现segfault错误解决方法

    本文分析了Python出现segfault错误解决方法.分享给大家供大家参考,具体如下: 最近python程序在运行过程中偶尔会引发系统segfault的错误,而且是在不定期不同代码段时发生的,所以单步调试没办法确定是哪一行代码的问题. 段错误, 这个现象太离奇了.在系统日志里message中一开始提示为python库的问题,后台有提示过libmysqlclient, 也提示过cjson库引起的. 如果真是在特定硬件环境中python或mysql库会出现问题,那有点说不过去.如果是cjson引起

  • Python提示[Errno 32]Broken pipe导致线程crash错误解决方法

    本文实例讲述了Python提示[Errno 32]Broken pipe导致线程crash错误解决方法.分享给大家供大家参考.具体方法如下: 1. 错误现象 ThreadingHTTPServer 实现的 http 服务,如果客户端在服务器返回前,主动断开连接,则服务器端会报 [Errno 32] Broken pipe 错,并导致处理线程 crash. 下面先看个例子,python 版本: 2.7 示例代码 复制代码 代码如下: #!/usr/bin/env python #!coding=u

  • Mysql主从同步Last_IO_Errno:1236错误解决方法

    Mysql主从同步的Last_IO_Errno:1236错误是什么原因呢,我们要如何来解决这个问题呢?下面和小编一起来看看关于此问题的记录与解决办法. <script>ec(2);</script> 从服务器错误代码: Last_IO_Errno: 1236 Last_IO_Error: Got fatal error 1236 from master when reading data from binary log: 'Slave can not handle replicat

  • MySQL启动1053错误解决方法

    操作系统:windows7 mysql版本:5.5.22 www.jb51.net 在使用命令mysqld --install servicename --defaults-file='file_name'创建mysql服务时,系统 已提示创建服务成功,但是net start命令提示启动失败,并在services.msc中提示1053错误 解决办法: 在网上有人说是服务的"登录"选项卡里要设置成administrator: 也有人说是需要先把服务删除,在重新创建(可以先考虑这两方面):

  • SQL SERVER 9003错误解决方法

    SQLSERVER 9003错误解决方法 只适用于SQL2000 (只适用于SQL2000) "无法打开新数据库 'POS'.CREATE DATABASE 中止. (Microsoft SQL Server,错误: 9003)" 看是9003错误,就想到可能是由于日志文件的原因,再看数据库文件可能损坏,于是想到dbcc checkdb指令. 方法如下: 1.我们使用默认方式建立一个供恢复使用的数据库(如pos).可以在SQL   Server   Enterprise   Manag

  • Mysql 1864 主从错误解决方法

    从字面意思看了一下是因为slave_pending_jobs_size_max默认值为16777216(16MB),但是slave接收到的slave_pending_jobs_size_max为17085453(17M): 解决方案 从库执行如下SQL mysql>stop slave; mysql>set global slave_pending_jobs_size_max=20000000; mysql> start slave; #在多线程复制时,在队列中Pending的事件所占用

随机推荐