Selecting a Garbage Collection Scheme

Top Performance Areas 2-9 Consider applying Patch Set Release PSR 11.1.0.7 and upgrade the database prior to attempting the following modifications.

2.6.1.1 Initialization Parameters for Oracle 10g

The following table describes several performance-related database initialization parameters for Oracle 10g database. Table 2–2 Important init.ora Oracle 10g Database Tuning Parameters Database Parameter Description DB_BLOCK_SIZE DB_BLOCK_SIZE specifies in bytes the size of Oracle database blocks. The default block size of 8K is optimal for most systems. Set this parameter at the time of database creation. NLS_SORT NLS_SORT specifies the collating sequence for ORDER BY queries. If the value is BINARY, then the collating sequence for ORDER BY queries is based on the numeric value of characters a binary sort that requires fewer system resources. If the value is a named linguistic sort, sorting is based on the order of the defined linguistic sort. Most but not all languages supported by the NLS_ LANGUAGE parameter also support a linguistic sort with the same name. OPEN_CURSORS OPEN_CURSORS specifies the maximum number of open cursors handles to private SQL areas a session can have at once. You can use this parameter to prevent a session from opening an excessive number of cursors. It is important to set the value of OPEN_CURSORS high enough to prevent your application from running out of open cursors. The number varies from one application to another. Assuming that a session does not open the number of cursors specified by OPEN_CURSORS, there is no added performance impact to setting this value higher than actually needed. SESSION_CACHED_CURSORS SESSION_CACHED_CURSORS specifies the number of session cursors to cache. Repeated parse calls of the same SQL statement cause the session cursor for that statement to be moved into the session cursor cache. Subsequent parse calls find the cursor in the cache and do not reopen the cursor. Oracle uses a least recently used algorithm to remove entries in the session cursor cache to make room for new entries when needed. This parameter also constrains the size of the PLSQL cursor cache which PLSQL uses to avoid having to re-parse as statements are re-executed by a user. SESSION_MAX_OPEN_FILES SESSION_MAX_OPEN_FILES specifies the maximum number of BFILEs that can be opened in any session. Once this number is reached, subsequent attempts to open more files in the session by using DBMS_LOB.FILEOPEN or OCILobFileOpen may fail. The maximum value for this parameter depends on the equivalent parameter defined for the underlying operating system. JOB_QUEUE_PROCESSES JOB_QUEUE_PROCESSES specifies the maximum number of processes that can be created for the execution of jobs. It specifies the number of job queue processes per instance. LOG_BUFFER LOG_BUFFER specifies the amount of memory in bytes that Oracle uses when buffering redo entries to a redo log file. Redo log entries contain a record of the changes that have been made to the database block buffers. The LGWR process writes redo log entries from the log buffer to a redo log file. UNDO_MANAGEMENT UNDO_MANAGEMENT specifies which undo space management mode the system should use. When set to AUTO, the instance starts in automatic undo management mode. In manual undo management mode, undo space is allocated externally as rollback segments. 2-10 Oracle Fusion Middleware Performance and Tuning Guide

2.6.1.2 Initialization Parameters for Oracle 11g

The following table provides information on some important performance-related database initialization parameters for Oracle 11g database. PL_SQL_CODE_TYPE PLSQL_CODE_TYPE specifies the compilation mode for PLSQL library units. INTERPRETED: PLSQL library units are compiled to PLSQL bytecode format. Such modules are executed by the PLSQL interpreter engine. NATIVE: PLSQL library units are compiled to native machine code. Such modules are executed natively without incurring any interpreter impacts. PROCESSES Sets the maximum number of operating system processes that can be connected to Oracle concurrently. The value of this parameter must account for Oracle background processes. SESSIONS parameter is deduced from this value. PGA_AGGREGATE_TARGET Specifies the target aggregate PGA memory available to all server processes attached to the instance. SGA_MAX_SIZE This parameter is the maximum size of the SGA for a running instance. Set this parameter to the amount of memory that you want dedicated for the SGA, which includes the following memory pools: ■ Database buffer cache ■ Shared pool ■ Large pool ■ Java pool Ensure that you regularly monitor the buffer cache hit ratio and size the SGA so that the buffer cache has an adequate number of frames for the workload. The buffer cache hit ratio may be calculated from data in the view VSYSSTAT. Also the view VDB_CACHE_ADVICE provides data that can be used to tune the buffer cache. SGA_TARGET Setting this parameter to a nonzero value enables Automatic Shared Memory Management. Consider using automatic memory management, both to simplify configuration and to improve performance. TRACE_ENABLED TRACE_ENABLED controls tracing of the execution history, or code path, of Oracle. Oracle Support Services uses this information for debugging. Although the performance impacts incurred from processing is not excessive, you may improve performance by setting TRACE_ENABLED to FALSE. Table 2–3 Important inti.ora Oracle 11g Database Tuning Parameters Database Parameter Description AUDIT_TRAIL AUDIT_TRAIL enables or disables database auditing. MEMORY_MAX_ TARGET MEMORY_MAX_TARGET specifies the maximum value to which a DBA can set the MEMORY_TARGET initialization parameter. MEMORY_TARGET MEMORY_TARGET specifies the Oracle system-wide usable memory. The database tunes memory to the MEMORY_TARGET value, reducing or enlarging the SGA and PGA as needed. PGA_AGGREGATE_ TARGET Specifies the target aggregate PGA memory available to all server processes attached to the instance. In Oracle 11g, set MEMORY_TARGET instead of setting SGA and the PGA separately. SGA_MAX_SIZE Consider setting MEMORY_TARGET instead of setting SGA and the PGA separately. SGA_TARGET Consider setting MEMORY_TARGET instead of setting SGA and the PGA separately. Table 2–2 Cont. Important init.ora Oracle 10g Database Tuning Parameters Database Parameter Description