1.
//保留池太小
if(REQUEST_FAILURES > 0 && REQUEST_FAILURES increasing){
//保留池太小
//增大SHARED_POOL_RESERVED_SIZE并相应增大SHARED_POOL_SIZE的大小。
}
2.
//保留池太大
if((REQUEST_MISSES == 0 || REQUEST_MISSES is not increasing)
|| FREE_MEMORY is greater than or equal to 50% of HARED_POOL_RESERVED_SIZE minimum ){
//保留池太大
//减小SHARED_POOL_RESERVED_SIZE的大小
}
This fixed view lists statistics that help you tune the reserved pool and space within the shared pool.
| Column | Datatype | Description |
|---|---|---|
The following columns of V$SHARED_POOL_RESERVED are valid only if the initialization parameter SHARED_POOL_RESERVED_SIZE is set to a valid
value.
See Also: "SHARED_POOL_RESERVED_SIZE" |
||
FREE_SPACE |
NUMBER |
Total amount of free space on the reserved list |
AVG_FREE_SIZE |
NUMBER |
Average size of the free memory on the reserved list |
FREE_COUNT |
NUMBER |
Number of free pieces of memory on the reserved list |
MAX_FREE_SIZE |
NUMBER |
Size of the largest free piece of memory on the reserved list |
USED_SPACE |
NUMBER |
Total amount of used memory on the reserved list |
AVG_USED_SIZE |
NUMBER |
Average size of the used memory on the reserved list |
USED_COUNT |
NUMBER |
Number of used pieces of memory on the reserved list |
MAX_USED_SIZE |
NUMBER |
Size of the largest used piece of memory on the reserved list |
REQUESTS |
NUMBER |
Number of times that the reserved list was searched for a free piece of memory |
REQUEST_MISSES |
NUMBER |
Number of times the reserved list did not have a free piece of memory to satisfy the request, and started flushing objects from the LRU list |
LAST_MISS_SIZE |
NUMBER |
Request size of the last request miss, when the reserved list did not have a free piece of memory to satisfy the request and started flushing objects from the LRU list |
MAX_MISS_SIZE |
NUMBER |
Request size of the largest request miss, when the reserved list did not have a free piece of memory to satisfy the request and started flushing objects from the LRU list |
The following columns of V$SHARED_POOL_RESERVED contain values which are valid even if SHARED_POOL_RESERVED_SIZE is not set. |
||
REQUEST_FAILURES |
NUMBER |
Number of times that no memory was found to satisfy a request (that is, the number of times the error ORA-04031occurred) |
LAST_FAILURE_SIZE |
NUMBER |
Request size of the last failed request (that is, the request size for the last ORA-04031 error) |
ABORTED_REQUEST_THRESHOLD |
NUMBER |
Minimum size of a request which signals an ORA-04031 error without flushing objects |
ABORTED_REQUESTS |
NUMBER |
Number of requests that signalled an ORA-04031 error without flushing objects |
LAST_ABORTED_SIZE |
NUMBER |
Last size of the request that returned an ORA-04031 error without flushing objects from the LRU list |
| Property | Description |
|---|---|
| Parameter type | Big integer |
| Syntax | SHARED_POOL_RESERVED_SIZE = integer [K
| M | G] |
| Default value | 5% of the value of SHARED_POOL_SIZE |
| Modifiable | No |
| Range of values | Minimum: 5000
Maximum: one half of the value of |
SHARED_POOL_RESERVED_SIZE specifies (in bytes) the shared pool space that is reserved for large contiguous requests for shared pool memory.
You can use this parameter to avoid performance degradation in the shared pool in situations where pool fragmentation forces Oracle to search for and free chunks of unused pool to satisfy the current request.
http://blog.csdn.net/robinson_0612/article/details/6562894