oracle 9i 的内存泄漏问题

oracle|问题

 近期在linux平台上写了一个程序需要通过oracle 9i的客户端调用PL/SQL, 在调试时发现有内存泄漏问题, 以为程序有bug, 检查了n遍也没有发现问题(呜呜,郁闷死了), 后来才找到资料说时oracle 9i的客户端有内存泄漏.
总结一下:
1. 当程序为多进程模式时会出现内存泄漏,而且泄漏速度很快, 在单进程模式下(DEFAULT)就没有这个问题
2. 只在UNIX和linux系统上出现, window系统上没有发现.
3. 不管是pro*c和OCI都会有这个问题
可以参考这个链接 http://forums.oracle.com/forums/thread.jsp?forum=67&thread=28962&message=384935&q=4c65616b20696e20546872656164656420656e7669726f6e6d656e74206f6e204f7261636c6520392e32202f4c696e757820#384935
解决方案有两个:
1. 使用9i以前的客户端, 其实9i和8i的客户端没有太大从差别,
2. 将oracle的客户端升级到9.2.0.4, 经过测试9.2.0.4已经解决了这个问题
oracle以稳定著称, 但是也出现内存泄漏这种问题, 汗呀

欢迎大家访问我对论坛 www.bj-unitech.com

时间: 2024-08-22 15:15:40

oracle 9i 的内存泄漏问题的相关文章

Oracle 9i服务器的关闭

3.5.1 服务器关闭的过程    关闭数据库例程时系统将完成以下步骤.    1. 第一阶段    Oracle将重执行缓冲区里的内容写入重执行日志文件.    将数据库缓冲区内被更改的数据写入数据文件.    关闭数据文件和重执行日志文件.    控制文件仍然打开,数据库不能进行一般性的访问操作.    2. 第二阶段    关闭数据库.    例程开始卸载数据库.    关闭控制文件,但SGA内存和后台支持进程仍然在运行.    3. 第三阶段    例程关闭.    释放SGA内存.  

Oracle 9i数据库服务器的体系结构

2.4.1 进程结构    Oracle 9i网络环境里共有两大类进程.    1. 用户进程    用户进程是在客户机内存上运行的程序,如客户机上运行的[SQL Plus].[企业管理器]等.用户进程向服务器进程提出操作请求.    2. 服务器进程    主要的服务器进程如表2.5所示.表2.5 Oracle 9i的主要后台支持进程 名称 主要作用 系统监控进程(SMON) 数据库系统启动时执行恢复性工作,对有故障数据库进行恢复 进程监控进程(PMON) 用于恢复失败的用户进程 数据库写入进

安装Oracle 9i数据库服务器

  本章介绍Oracle 9i网络中两种主要的成分--数据库服务器和管理客户机的安装和配置过程.本章目的在于帮助读者掌握如何安装Oracle 9i以及如何配置Oracle 9i网络环境.    本书采用Windows 2000 Server作为安装的网络操作系统平台,数据库服务器采用Oracle 9i Database for Windows 2000的企业版.2.1.1 安装的硬件环境需求    下列从5个主要的方面阐述Oracle 9i对硬件环境的要求.    1. 对CPU的要求    C

Oracle 9i 事务处理

   事务是Oracle 9i中进行数据库操作的基本单位,在PL/SQL程序中,可以使用3个事务处理控制命令. commit命令     commit是事务提交命令.在Oracle 9i数据库中,为了保证数据的一致性,在内存中将为每个客户机建立工作区,客户机对数据库进行操作处理的事务都在工作区内完成,只有在输入commit命令后,工作区内的修改内容才写入到数据库上,称为物理写入,这样可以保证在任意的客户机没有物理提交修改以前,别的客户机读取的后台数据库中的数据是完整的.一致的,如图9.26所示.

详细介绍 Oracle 9i 的各个技术特征

在介绍 Oracle9i 之前我们先介绍一些关于 Oracle 公司的资料,让各位朋友更多了解 Oracle. 1977 年,拉里·艾里森和Bob Miner.Ed Oates一起创建一家软件开发实验室(Software Development Laboratories).开发当时新型的数据库技术--关系型数据库系统,并将第一个产品命名为"Oracle",意为"智慧之源".1978年软件开发实验室更名为关系型软件公司(Relational Software Inc.

Oracle体系结构:内存结构和进程结构

oracle|进程|体系 (一)内存结构和进程结构 Oracle数据库的总体结构如下图:  1:Oracle实例(Instance)           在一个服务器中,每一个运行的Oracle数据库都与一个数据库实例相联系,实例是我们 访问数据库的手段.  实例在操作系统中用ORACLE_SID来标识,在Oracle中用参数INSTANCE_NAME来标识, 它们两个的值是相同的.数据库启动时,系统首先在服务器内存中分配系统全局区(SGA), 构成了Oracle的内存结构,然后启动若干个常驻内

Linux 8.0 安装 Oracle 9i

oracle 目的:在Linux 8.0 安装 Oracle 9i,确保数据库的安全和稳定 软件环境:Linux 8.0 (三张碟)Oracle 9.2.0.1.0 For Linux (三张碟) 硬件环境:P4 2.4.内存512M.硬盘80G高转.16X_DVD光驱 问题原因:Linux下运行Oracle的系统环境配置,导致Oracle无法正确安装. 问题描述: 详细解决过程一.系统参数配置1.在安装linux8.0的时候,注意把根目录(/)分区为10G左右,Swap分区为1G左右,/u01

Install Oracle 9i/10g On RHEL AS 3

oracle Install Oracle 9i/10g On RHEL AS 3  作者:ern (yaoyongping@gmail.com) 本文描述了在Red Hat Enterprise Linux Advanced Server 3 (RHEL AS 3)上安装Oracle 9i/10g 必要的步骤和相关知识.相关文章很多,本文主要着重于整理和总结了网友(特别是Fenng)的文档.Red Hat公司的RHEL相关白皮书.Oracle公司的技术文档和白皮书等,比较两个版本在AS 3上的

RHAS 3.0上的Oracle 9i的安装

oracle RHAS 3.0上的Oracle 9i的安装原文来自 :好好先生 llmmysun 修改后发布参考文档:http://www.puschitz.com/InstallingOracle9i.shtml 另外还参考了一篇csdn上的安装文档,在此一并表示感谢! 声明:本文可任意转载,但请保留上述信息     Oracle是世界上使用最广泛的数据库,它可以运行在各种计算机上:也是当前最优秀的关系型数据库.以前,一至无缘接触.这两天,正好有空.就在自己的计算机上装了一遍,领略了一番她的魅