我们正在使用sqlplus在一个大型表上使用sqlplus从oracle卸载数据,该表具有500多个列,每天大约有1500万条记录。查询失败,因为oracle无法为结果集分配所需的内存。排除了微调oracle DB服务器以增加内存分配的可能性,因为它已在各个团队中使用,并且至关重要。这是一个简单的选择,在列上有一个过滤器。我必须采取什么选择才能使其正常工作?
1)将查询细分为多个块,并在每晚批处理模式下运行它。如果是这样,如何分解选择查询2)在将sqlplus用于大表上的选择查询时,我可以使用任何优化技术吗?3)任何基于Java / ojdbc的解决方案都可以将选择拆分为多个块并减少db服务器上的负载?
任何指针都受到高度赞赏。
这是抛出的错误消息:ORA-04030:尝试分配169040字节(pga堆,kgh堆栈)时进程内存不足ORA-04030:试图分配16328字节(koh-kghu sessi,pl /)时进程内存不足sql vc2)
的ORA-4030
表示处理需要更多的存储器(UGA在SGA / PGA取决于服务器架构)来执行作业。
这可能是由于RAM不足(专用服务器模式环境),PGA较小或操作系统设置为限制分配足够的RAM而引起的。
本MOS说明介绍了如何诊断和解决ORA-04030
错误。
诊断和解决ORA-4030错误(文档ID 233869.1)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句