You are on page 1of 9

Oracle parameters and their descriptions

Here are some important Oracle parameters and information in the context of use with SAP
applications.
BACKGROUND_DUMP_DEST

Path for alert log and background trace files

COMPATIBLE

Defines the Oracle version whose features can be used to the greatest extent

As a rule, it must not be reset to an earlier release (see Note SAP 598470).

A value with three parts (such as 10.2.0) rather than five parts (such as 10.2.0.2.0) is
recommended to avoid changing the parameter as part of a patch set installation.

If an ORA-00201 error occurs when you try to convert the value with five parts
10.2.0.2.0 to 10.2.0, you can leave the value 10.2.0.2.0 (independent of the patch set
used).

CONTROL_FILES

Path and name of the control files that are used

CONTROL_FILE_RECORD_KEEP_TIME

Defines how many days historic data is retained in the control files

Historic data is required by RMAN, for example.

May cause control files to increase in size (see Note 904490)

CORE_DUMP_DEST

Path under which core files are stored

DB_BLOCK_SIZE.

Size of an Oracle block

Can be set to a value higher than 8K in well-founded individual cases after it has been
approved by SAP Support (see Note 105047)

DB_CACHE_SIZE

Size of the Oracle data buffer (in bytes)

Optimal size depends on the available memory (see Notes 789011 and 617416)

DB_FILES

Maximum number of Oracle data files

DB_NAME

Name of the database

DB_WRITER_PROCESSES

Number of DBWR processes

EVENT

Activation of internal control mechanisms and functions

To set events in SPFILE, refer also to Note 596423.

If many events are set, data sources such as V$PARAMETER,


DBA_HIST_PARAMETER, or "SHOW PARAMETER" may supply an incomplete
value. This is only a display problem. The values that are included in V$PARAMETER2
are the relevant values.

FILESYSTEMIO_OPTIONS

Activation of file system functions (see Note 999524 and Note 793113)

If you previously used a large file system cache (>= 2 * Oracle Buffer Pool), the
performance may get worse after you activated the direct I/O if you set
FILESYSTEMIO_OPTIONS to SETALL. Therefore, it is important that you enlarge the
Oracle buffer pool to replace the file system cache that is no longer available.

HPUX_SCHED_NOAGE

Optimized scheduling policy for Oracle processes on HP-UX.

The privileges RTSCHED and RTPRIO must be assigned to the dba group to enable you
to use the functions (see Note 1285599).

LOG_ARCHIVE_DEST

Historic variant of LOG_ARCHIVE_DEST_1, which is not compatible with features


such as the Flash Recovery Area and which should therefore no longer be used.

LOG_ARCHIVE_DEST_1

Path/prefix for offline redo logs

The syntax differs with an additional "LOCATION=" string of LOG_ARCHIVE_DEST;


if this difference is ignored, ORA-16024 occurs concerning LOG_ARCHIVE_DEST_1.

LOG_ARCHIVE_FORMAT

Name format of the offline redo logs

To avoid the problems described in Note 132551, it must be explicitly set to WINDOWS
at least.

LOG_BUFFER

Minimum size of the Oracle redo buffer (in bytes)

Oracle internally determines the buffer's actual size, so it is normal for "SHOW
PARAMETER LOG_BUFFER" or a SELECT on V$PARAMETER to return values
between 1MB and 16MB.

LOG_CHECKPOINTS_TO_ALERT

Defines whether checkpoints are to be logged in the alert log

MAX_DUMP_FILE_SIZE

Maximum size of Oracle trace files (in operating system blocks)

A limitation is useful to avoid file system overflows and to reduce the duration of the
dump generation.

You can increase it temporarily if required.

OPEN_CURSORS

Maximum number of cursors opened in parallel by one session

OPTIMIZER_DYNAMIC_SAMPLING

Determines how much data is to be read to determine the access plan.

Level 2 (the default setting for Oracle 10g): Dynamic sampling is performed only if
tables do not have any statistics.

Level 6: As level 2 and includes dynamic sampling of 128 table blocks if literals are used
and there are no bind variables.

OPTIMIZER_INDEX_COST_ADJ

Adjusts the calculated index costs; when there is a value of 20 (percent), index costs are
reduced by a factor of 5, for example.

A value lower than 100 is advisable so that index accesses are preferred instead of full
table scans.

PARALLEL_EXECUTION_MESSAGE_SIZE

Defines size of the memory area for parallel query messages (in bytes)

PARALLEL_MAX_SERVERS

Defines the maximum number of parallel execution processes (see Note 651060)

Based on the number of CPU Cores of the database server

The number of CPU Cores generally corresponds to the default value for the Oracle
parameter CPU_COUNT. If you are unsure in individual cases, you can use the value of
the parameter CPU_COUNT (for example, in transaction DB26).

If the database shares the server with other software (for example, SAP central instance,
other Oracle instances), you can also select a lower value (for example, 8 CPU Cores, the
SAP central instance and the Oracle database should share resources 50:50 ->
PARALLEL_MAX_SERVERS = 8 * 0.5 * 10 = 40).

PARALLEL_THREADS_PER_CPU

Defines the number of parallel query processes that can be executed in parallel for each
CPU

Influences the DEFAULT level of parallel processing during a parallel execution (see
Note 651060).

PGA_AGGREGATE_TARGET

Checks the available PGA memory (see Notes 789011 and 619876)

PROCESSES

Defines the maximum number of Oracle processes that exist in parallel

The component relating to ABAP work processes is only relevant in systems with ABAP
stacks. The component relating to J2EE server processes is only relevant in systems with
Java stacks.

<max-connections> indicates the maximum number of connections (also called pool size)
of the J2EE system DataSource (sysDS.maximumConnections). You can set the value of
this parameter using the VisualAdmin tool or other J2EE administration tools.

QUERY_REWRITE_ENABLED

Defines whether query transformations are also factored in when the access path is
determined

RECYCLEBIN

Enables access later on to objects that have already been dropped

Not supported by SAP (see Note 105047)

REMOTE_OS_AUTHENT

Defines whether TCP database access via OPS$ users is allowed (see Note 400241)

REPLICATION_DEPENDENCY_TRACKING

Defines whether the system has to create replication information when the database is
accessed

Performance improves if it is deactivated

SESSIONS

Defines the maximum number of Oracle sessions that exist in parallel - must be
configured larger than PROCESSES, since single processes can serve several sessions
(for example, in the case of multiple database connections from work processes)

SHARED_POOL_SIZE

Defines the size of the Oracle shared pool (see Notes 690241 and 789011)

STAR_TRANSFORMATION_ENABLED

Specifies to what extent STAR transformations can be used

UNDO_MANAGEMENT

Defines whether automatic undo management is used (see Note 600141)

UNDO_TABLESPACE

Defines the undo tablespace to be used (see Note 600141)

USER_DUMP_DEST

Path for trace files of Oracle shadow processes

_B_TREE_BITMAP_PLANS

Defines whether data of a B*TREE index can be transformed into a bitmap display
during a database access.

_BLOOM_FILTER_ENABLED

Determines whether bloom filters may be used during joins.

_DB_BLOCK_NUMA

Control use of NUMA optimizations.

_ENABLE_NUMA_OPTIMIZATION

Control use of NUMA optimizations.

_FIX_CONTROL

Activates or deactivates individual CBO fixes

To set _FIX_CONTROL, see Note 1455168.

If many _FIX_CONTROL values are set, data sources such as V$PARAMETER,


DBA_HIST_PARAMETER, or "SHOW PARAMETER" may supply an incomplete
value. This is only a display problem. The values that are included in
V$SYSTEM_FIX_CONTROL are the relevant values.

Note 1454675 describes a problem whereby the _FIX_CONTROL values do not work
despite being displayed correctly in V$PARAMETER.

_CURSOR_FEATURES_ENABLED

With a value of 10 and in connection with fix 6795880, the following is prevented:
sporadic hanging during parsing

_FIRST_SPARE_PARAMETER

This is a generic parameter that can be used for different purposes in certain cases.

With Oracle 10.2.0.4 and fix 6904068, you use this parameter to introduce a break of
1/100 second between two "cursor: pin S" mutex requests instead of continually
executing requests. This may help to avoid critical CPU bottlenecks.

_INDEX_JOIN_ENABLED

Controls whether index joins can be used or not; within an index join, two indices of a
table are directly linked together.

_IN_MEMORY_UNDO

Controls whether the In Memory Undo feature (IMU) is used or not

_OPTIM_PEEK_USER_BINDS

Defines whether Oracle takes the contents of the bind variables into account during
parsing

May cause various problems (Notes 755342, 723879) if not set to FALSE.

_OPTIMIZER_BETTER_INLIST_COSTING

Controls the cost calculation for IN lists

If the parameter is set to OFF, long IN lists are evaluated very favorably.

The CBO performs a reasonable cost calculation for IN lists using the value ALL.

Therefore, you should always use the default value ALL (this means that you should not
set the parameter). If the CBO takes incorrect decisions in individual cases, these
incorrect decisions must be analyzed and corrected.

_OPTIMIZER_MJC_ENABLED

Controls whether Cartesian merge joins are used.

_PUSH_JOIN_UNION_VIEW

Controls whether join predicates may be used in a UNION ALL construct beyond the
view boundaries.

_SORT_ELIMINATION_COST_RATIO

Controls rule-based CBO decision in connection with the FIRST_ROWS hint and
ORDER BY (see Note 176754).

_TABLE_LOOKUP_PREFETCH_SIZE

Controls whether table prefetching is used (a value of zero means no table prefetching).