Hallo,
Du sprichst von zu vielen IOs. Wie ist denn Deine Hit Ratio?
Bei zu vielen PIOs (physical IOs) - im Gegensatz zu LIOs (logical IOs) - würde ich eher erst db_block_buffer vergrößern.
Im Shared Pool liegen doch "nur" die geparsten Statements, Structures, Cursurs, etc.?
ORA-04031 tritt im Allgemeinen dann auf, wenn der Shared Pool zu sehr fragmentiert ist und nicht mehr genügend zusammenhängender Speicher zur Verfügung steht.
Beim obigen Fehler sollte erst versucht werden, die Applikation zu tunen, sprich SQL-Statements, Cursors, etc. zu sharen. In Deinem Fall also beide großen Abfragen aufeinander abstimmen.
Was genau bedeutet, "Die Anfragen haben bis zu 110MB belegt"?
Ohne Dein Hit Ratio zu kennen:
Ich würde large_pool_size erstmal wieder disablen und etwas auf large_pool_size draufschlagen.
Interessant sind auch SHARED_POOL_RESERVED_SIZE und SHARED_POOL_RESERVED_MIN_ALLOC. Schaue sie Dir mal an.
Dein Problem mit dem IO hast Du evtl. schon mit den 16MB sort_area_size aus der Welt geschafft?!
v$sgastat, v$shared_pool_reserved, etc. sind auch interessant...
P.S.: Oracle 8.0.4 ist doch schon etwas älter. Vielleicht sollte man auch noch nach Bugfixes ausschau halten. Es gab immer mal wieder häßliche memory leaks im shared pool, die gefixt wurden...
Gruß,
Christian