Re: Shared Pool Size (Hard to Explain)

From: Sanjay D.S. <sanjay_at_fsg.prusec.com>
Date: 1996/03/14
Message-ID: <4i9o2j$kj5_at_prufire4.prusec.com>#1/1


Here's something you may want to do:

startup sqldba

run following command at sqldba prompt:
1. alter system flush shared_pool;

(this command will flush all sql/pl-sql statements cached in shared_pool
    of sga)

2. start your application.
3. at sqldba start monitoring using following:
4. set serveroutput on;
5. execute dbms_shared_pool.sizes(ip_size);

(Above command with display all objects cached in shared_pool with
   size greater than or equal to ip_size(kilobytes). 6. If at any point a large object(cursor,sql_statement,procedure) has

   to be cached or brought-in and if ORACLE doesnot find contiguous memory    blocks even after aging out other small objects from shared_pood, chances    are you'll get ORA-04031 message.
(Also check, if you application is "keeping" a particular database object
   locked in shared_pool. This is possible using dbms_shared_pool.keep    procedure, if so, you may want to reconsider sizing your    shared_pool_size in sga).

   more information about dbms_shared_pool package can be found in    /oracle/rdbms directory.

Hope it is helpful.
(If get real sound solution to the problem, let us know)

  • sanjay d.s.
Received on Thu Mar 14 1996 - 00:00:00 CET

Original text of this message