ORA-4031は共有プールの断片化が原因の可能性あり

 過去に私が関わったシステムで共有プールの割当失敗(ORA-4031)が発生したことがあります。原因は共有プールの断片化でした。このときデータベースサーバは3カ月程度、起動し続けており共有プールの断片化が進んでいました。

 その場の対処としてはサーバを強制終了させ、再起動させました。可能であれば
 alter system flush shared_pool;

を実行して共有プールの解放を行ってください。※通常、共有プールの解放はオンライン中に実行することは推奨されていません。この件から定期的に再起動する意味を感じました。