操作系统:UNIX
数据库:Oracle 8.1.7Client端开发语言:ProC问题:
我写了一个ProC的程序,主要就是对数据库的几个表进行读写操作。
如果用户频繁运行这个程序,也就是说频繁连接Oracle 数据库,这样会对Oracle产生什么影响?对操作系统产生什么影响?怎么解决?谢谢

解决方案 »

  1.   

    ORACLE里有个最大连接进程数如果操过这个数,再连接会报错。
    这是ORACLE还是可用的,操作系统也是一样,
      

  2.   

    在INIT<SID>.ORA文件里
      把 processes = 200 这个参数加大:从新启动数据库。
      

  3.   

    应该没有什么影响!只要没有超出session的连接数目就可以。
      

  4.   

    这个程序应该是这样的:开始运行时,首先连接oracle数据库,然后做一些数据库读写操作,然后exit退出程序。所以用户频繁运行这个程序,就会不断地连接、断开;连接、断开 ...到底会不会影响oracle或者影响操作系统呢? 很难的一个问题呀! ...
      

  5.   


      
     Proc支持连接池吗?  如果支持的话,还是使用连接池吧。 频繁的连接数据库,如果程序有 Bug,或者是Oracle 本身的bug,
     都可能引起内存泄漏。 如果是生产库的话,运行不了多久内存
     可能就会耗光。 这不是危言耸听,我见过这样的事情。
      

  6.   

    打开程序(连接) -> 运行中... -> 关闭程序(断开连接)这与 session 有关.
      

  7.   

    Oracle 8.1.7.0.0 又一个巨 bug -- SGA memory leak,频繁连接Oracle 数据库会造成资源的严重泄漏,举个例子:
    配置20MBshared_pool, 频繁连接->断开,大概40000次左右,数据库就会Crash掉。