ORA-04035: unable to allocate string bytes of shared memory in shared object cache “string” of size “string”

文档解释

ORA-04035: unable to allocate string bytes of shared memory in shared object cache “string” of size “string”

Cause: More shared memory is needed than was allocated in the shared object cache.

Action: None

ORA-04035是由于在分配Oracle数据库共享内存上出现内部错误而引发的,表明无法从该共享内存对象(通常是library cache)中分配指定大小的内存。其直接错误信息通常是:

ORA-04035: unable to allocate string bytes of shared memory (“string” of “”string””)

解决此错误的一般步骤包括:

1.在确认ORA-04035之前,需要排除所有其它可能会导致ORA-04035之外的潜在错误;

2.如果此问题已经存在,则必须增加共享内存池的设置;

3.更改参数_shared_pool_reserved_min_alloc可以降低shared pool reserve消耗空间;

4.更改参数_shared_pool_reserved_pct可以增加shared pool reserve里存放内容的占比(或降低数据缓存块占比);

5.可以使用优化工具分析SQL,以确认在内存中的可用空间,并归约可以释放的数据空间;

6.最后,可以调整内存中的物理内存,使其充足,这是解决此问题的最终解决方案。

你可能感兴趣的