Oracle Startup Parameters
Version 23c

General Information
Library Note Morgan's Library Page Header
ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling complimentary technical Workshops on Database Security for the first 30 Oracle Database customers located anywhere in North America, EMEA, LATAM, or APAC that send an email to asra_us@oracle.com. Request a Workshop for your organization today.
Purpose Startup Parameters, back in the days of the dinosaurs were written into the static initSID.ora file and a restart was required to activate or deactivate them. We now have the dynamic SPFILE which allows us to, in many cases, dynamically modify configuration parameter without an outage.

A small number of the parameters below are required ... the vast majority are optional. Those that are mandatory are highlighted with a light-green background.

Many init parameters affect multiple categories of behavior, for example PDB and Network. Perform a careful search on this page as init parameters have only been listed once.

Parameters once stated as "Deprecated" in the Oracle docs are dropped from this page.
Removing a parameter from an SPFILE ALTER SYSTEM RESET <parameter_name>;
SQL> ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instance
SQL> ORACLE instance started.
-- read the alert.log's tail, find the parameter name and remove it from the spfile then restart the instance

SQL> ALTER SYSTEM RESET sec_case_sensitive_logon SCOPE=SPFILE SID='*';
Documented Parameter Index
Undocumented Parameter Index Undocumented underscore parameters are on a separate library page: Link at the bottom of this page.
 
Documented
Advanced Queuing (AQ) & Streams
AQ_TM_PROCESSES

Default: 1
Required for Advanced Queuing. Valid range of values is 0 to 10. Zero means Oracle manages the resource and is recommended for AQ.
aq_tm_processes=0
 
ANSI Compliance
BLANK_TRIMMING

Default: FALSE
Specifies the data assignment semantics of character data types. Allows the data assignment of a source character string or variable to a destination character column or variable even though the source length is longer than the destination length. In this case, however, the additional length over the destination length is all blanks.
Range of values: {FALSE | TRUE}
blank_trimming=TRUE
 
Archive Logging
ARCHIVE_LAG_TARGET

Default: 0
Limits the amount of data that can be lost and effectively increases the availability of the standby database by forcing a log switch after a specified time elapses.

The ARCHIVE_LAG_TARGET initialization parameter causes Oracle to examine an instance's current online redo log periodically. If the following conditions are met the instance will switch the log:
  • The current log was created prior to n seconds ago, and the estimated archival time for the current log is m seconds (proportional to the number of redo blocks used in the current log), where n + m exceeds the value of the ARCHIVE_LAG_TARGET initialization parameter.
  • The current log contains redo records.
In an Oracle Real Application Clusters environment, the instance also kicks other threads into switching and archiving logs if they are falling behind. This can be particularly useful when one instance in the cluster is less active than the other instances.

The parameter specifies the target of how many seconds of redo the standby could lose in the event of a primary shutdown or crash. It also provides an upper limit of how long (in the number of seconds) the current log of the primary database can span. Because the estimated archival time is also considered, this is not the exact log switch time.

Range of values: 0 or any integer between [60, 7200]
archive_lag_target=0
LOG_ARCHIVE_DEST_n

Default: NULL
Defines up to 10 (where n = 1, 2, 3, ... 31) destinations, each of which must specify either the LOCATION or the SERVICE attribute to specify where to archive the redo data. All other attributes are optional. Whether specifying the LOCATION or SERVICE attribute, it must be the first attribute supplied in the list of attributes.

Syntax: LOG_ARCHIVE_DEST_[1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | .. | 31] =
{null_string | { LOCATION=path_name | SERVICE=service_name} [MANDATORY] [REOPEN[=seconds]]
[DELAY[=minutes]]
[NOREGISTER]
[TEMPLATE=template]
[ALTERNATE=destination]
[DEPENDENCY=destination]
[MAX_FAILURE=count]
[SYNC | ASYNC]
[AFFIRM | NOAFFIRM]
[NET_TIMEOUT=seconds]
[VALID_FOR=(redo_log_type,database_role)]
[DB_UNIQUE_NAME]
[MAX_CONNECTIONS=count]
[COMPRESSION={ENABLE|DISABLE}]}
log_archive_dest_1= 'LOCATION =/app/oracle/product/flash_recovery_area/arch
valid_for=(all_logfiles,all_roles) db_unique_name=proda'

log_archive_dest_2='service=prodb valid_for=(online_logfile,primary_role) db_unique_name=prodb NET_TIMEOUT=30 REOPEN=60 OPTIONAL MAX_CONNECTIONS=3'
LOG_ARCHIVE_DEST_STATE_n

Default: ENABLE
Specifies the state for log_archive_dest_n.
Syntax: LOG_ARCHIVE_DEST_STATE_n[1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | .. | 31] ={ENABLE | DEFER | ALTERNATE}
log_archive_dest_state_1='ENABLE'
LOG_ARCHIVE_DUPLEX_DEST

Default: NULL
Similar to LOG_ARCHIVE_DEST specifies a second archive destination: the duplex archive destination. This duplex archive destination can be either a must-succeed or a best-effort archive destination, depending on how many archive destinations must succeed (as specified in the LOG_ARCHIVE_MIN_SUCCEED_DEST parameter).

The default setting of a null string ("") or (' ') indicates that a duplex archive destination does not exist.
log_archive_dest='/app/oracle/product/flash_recovery_area/arch'
log_archive_duplex_dest='/u02/arch'
LOG_ARCHIVE_FORMAT

Default: Operating system dependent. For OEL %t_%s_%r.dbf
Use a text string and variables to specify the default filename format when archiving redo log files. The string generated from this format is appended to the string specified in the LOG_ARCHIVE_DEST parameter.

The following variables can be used in the format:
%a activation ID
%d database ID
%r resetlogs ID ensures unique names are constructed for the archived log files across multiple DB incarnations
%s log sequence number
%S log sequence number, zero filled
%t thread number
%T thread number, zero filled

Using uppercase letters for the variables (for example, %S) causes the value to be fixed length and padded to the left with zeros. An example of specifying the archive redo log filename format follows:
log_archive_format=%t+%s+%r.arc
LOG_ARCHIVE_MAX_PROCESSES

Default: 4
Specifies the number of archiver background processes (ARC0 through ARCn) Oracle initially invokes.SQL syntax.
Range of values: {1 .. 40}
log_archive_max_processes=6
LOG_ARCHIVE_MIN_SUCCEED_DEST

Default: 1
The minimum number of destinations that must succeed for the online log file to be available for reuse.
Range of values: 0 to 10 with ARCHIVE_DEST_n, otherwise 1 or 2
log_archive_min_succeed_dest=2
LOG_ARCHIVE_TRACE

Default 0
Value Description
0 Disable archivelog tracing
1 Track archival of redo log file
2 Track archival status of each archivelog destination
4 Track archival operational phase
8 Track archivelog destination activity
16 Track detailed archivelog destination activity
32 Track archivelog destination parameter modifications
64 Track ARCn process state activity
128 Track FAL (fetch archived log) server related activities
256 Track RFS Logical Client
512 Track LGWR redo shipping network activity
1024 Track RFS Physical Client
2048 Track RFS/ARCn Ping Heartbeat
4096 Track Real Time Apply
8192 Track Redo Apply (Media Recovery or Physical Standby)
16384 Track Redo Transport buffer management
32768 Track Redo LogMiner dictionary
log_archive_trace=128
REMOTE_RECOVERY_FILE_DEST

Default: <no value>
Specifies a directory from which to read archive log files during a pluggable database (PDB) refresh operation if the source is not available
Syntax: REMOTE_RECOVERY_FILE_DEST=string
TBD
 
ASH and AWR Reporting
AWR_PDB_AUTOFLUSH_ENABLED

Default: TRUE
Enable/disable automatic AWR snapshots for all the PDBs in a CDB or for individual PDBs in a CDB. This parameter enabled in CDB$ROOT and only affects PDBs.
Range of values: {FALSE | TRUE}
awr_pdb_autoflush_enabled=FALSE
AWR_PDB_MAX_PARALLEL_SLAVES

Default: 10
Enables allocation of the correct amount of resources to enable quick and timely AWR flushes for multitenant container databases (CDBs).

Range of values: {1 to 30}
awr_pdb_max_parallel_slaves=15
AWR_SNAPSHOT_TIME_OFFSET

Default: NULL
Setting for AWR Snapshot Time Offset
Range of values: {0 to 3599, or the special value 1000000}
awr_snapshot_time_offset=0
 
ASM
ASM_DISKGROUPS

Default: NULL
Specifies a list of names of disk groups to be mounted by an Automatic Storage Management instance at instance startup or when an ALTER DISKGROUP ALL MOUNT statement is issued. Range of values Comma-separated list of strings, of up to 30 characters in length.
asm_diskgroups=dgroupA, dgroupB
ASM_DISKSTRING

Default: NULL
An operating system-dependent value used by Automatic Storage Management to limit the set of disks considered for discovery. Value is a comma delimited string of disks.
asm_diskstring='dev/rdsk/*s2, /dev/rdsk/c1*'
ASM_IO_PROCESSES

Default: 20
Number of I/O processes per domain in the ASM IOSERVER instance
Range of values: {1 to 32}
asm_diskstring='dev/rdsk/*s2, /dev/rdsk/c1*'
ASM_POWER_LIMIT

Default: 1
Specifies the maximum power on an Automatic Storage Management instance for disk rebalancing.
Range of values: {0 to 11}
asm_power_limit=5
ASM_PREFERRED_READ_FAILURE_GROUPS

Default: NULL
Specifies the failure groups that contain instance specific preferred read disks
asm_preferred_read_failure_groups='dgroupA.fgroupA, 'dgroupB.fgroupB'
 
Auditing
AUDIT_FILE_DEST

Default:
$ORACLE_BASE/admin/ORACLE_SID/adump
The operating system directory into which the audit trail is written when the AUDIT_TRAIL initialization parameter is set to os.
audit_file_dest=/app/oracle/product/admin/orabase/adump
AUDIT_SYS_OPERATIONS

Default: TRUE
Changed to FALSE in 23c
Enables or disables auditing of operations issued by user SYS, and users connecting with SYSDBA or SYSOPER privileges.
Range of values: {FALSE | TRUE}
audit_sys_operations=TRUE
AUDIT_SYSLOG_LEVEL

Default: NULL
Allows SYS and standard OS audit records to be written to the system audit log using the SYSLOG utility. If you use this parameter, it is best to assign a file corresponding to every combination of facility and priority (especially KERN.EMERG) in syslog.conf. Sometimes these are assigned to print to the console in the default syslog.conf file. This can become annoying and will be useless as audit logs. Also, if you use this parameter, it is best to set the maximum length of syslog messages in the system to 512 bytes. If AUDIT_SYSLOG_LEVEL is set and SYS auditing is enabled (AUDIT_SYS_OPERATIONS = TRUE), then SYS audit records are written to the system audit log. If AUDIT_SYSLOG_LEVEL is set and standard audit records are being sent to the operating system (AUDIT_TRAIL = os), then standard audit records are written to the system audit log.

Syntax: AUDIT_SYSLOG_LEVEL = 'facility_clause.priority_clause'
Facility Clause Options: {USER | LOCAL[0|1|2|3|4|5|6|7]| SYSLOG | DAEMON | KERN | MAIL | AUTH | LPR | NEWS | UUCP | CRON}
Priority Options: {NOTICE | INFO | DEBUG | WARNING | ERR | CRIT | ALERT | EMERG}
audit_syslog_level='KERN.EMERG'
AUDIT_TRAIL

Default: NULL
Enables or disables database auditing.
Syntax: AUDIT_TRAIL = {DB | OS | NONE | TRUE | FALSE | DB_EXTENDED}
audit_trail='DB'
UNIFIED_AUDIT_SYSTEMLOG

Default: UNIX (None), Windows FALSE
Specifies whether a piece of unified audit records will be written to the SYSLOG utility (on UNIX platforms) or to the Windows Event Viewer (on Windows). In a CDB, this parameter is specified per-PDB and static.

Syntax: UNIFIED_AUDIT_SYSTEMLOG = 'facility_clause.priority_clause'

Facility Clause Options: {USER | LOCAL[0|1|2|3|4|5|6|7]}
Priority Options: {NOTICE | INFO | DEBUG | WARNING | ERR | CRIT | ALERT | EMERG}
unified_audit_systemlog='LOCAL0.ALERT'
 
Backup, Restore and Clone
BACKUP_TAPE_IO_SLAVES

Default: FALSE
Specifies if I/O server processes (also called slaves) are used by Recovery Manager to back up, copy, or restore data to tape.
Range of values: {FALSE | TRUE}
backup_tape_io_slaves=FALSE
CLONEDB

Default: FALSE
Should be set on Direct NFS Client CloneDB databases. When set, the CloneDB database uses the database backup as the backing store for the datafiles.
Range of values: {FALSE | TRUE}
ALTER SYSTEM SET clonedb=TRUE
CLONEDB_DIR

Default: $ORACLE_HOME/dbs
Sets the directory path where CloneDB bitmap files should be created and accessed
Range of values: String defining a valid operating system path
ALTER SYSTEM SET clonedb_dir=$ORACLE_BASE/oradata/clonedb
CONTROL_FILE_RECORD_KEEP_TIME

Default: 7 (days)
Specifies the minimum number of days before a reusable record in the control file can be reused. In the event a new record needs to be added to a reusable section and the oldest record has not aged enough, the record section expands. If this parameter is set to 0, then reusable sections never expand, and records are reused as needed.
Range of values: {0 to 365} (days)
ALTER SYSTEM SET control_file_record_keep_time=32 SCOPE=BOTH;
FAST_START_MTTR_TARGET

Default 0 seconds
Specify the number of seconds the database takes to perform crash recovery of a single instance. The value Is overridden by LOG_CHECKPOINT_INTERVAL so do not set them when using this parameter. The estimated MTTR can be found in v$instance_recovery.
Range of values: {0 to 3600} (seconds)
fast_start_mttr_target=15
INSTANT_RESTORE

Default: FALSE
Not documented in the Database Reference but present in v$parameter
Range of values: {FALSE | TRUE}
instant_restore=TRUE
RECOVERY_PARALLELISM

Default: System-determined parallel recovery
Specifies the number of processes to participate in instance or crash recovery. To force serial crash and instance recovery, set the parameter to 0 or 1. 0 disables parallel instance and crash recovery on a system that has multiple CPUs. An alert log displays the degree of parallelism that was chosen when the database instance/recovery starts.
recovery_parallelism=0
TAPE_ASYNCH_IO

Default: TRUE
Controls whether I/O to sequential devices (for example, backup or restore of Oracle data to or from tape) is asynchronous.
Range of values: {FALSE | TRUE}
tape_asynch_io=FALSE
 
BFILEs
SESSION_MAX_OPEN_FILES

Default: 10
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() will fail.
Range of values: {1 to 50, or 1 to MAX_OPEN_FILES, whichever is greater}
session_max_open_files=6
 
Buffer Cache
DB_BLOCK_BUFFERS

Default: 0
Specifies the number of database buffers in the buffer cache
Range of values: {50 to an operating system specific maximum}
db_block_size=8192
DB_BLOCK_SIZE

Default: 8192
Specifies (in bytes) the size of Oracle database blocks. For Real Application Clusters, this parameter affects the maximum value of the FREELISTS storage parameter for tables and indexes. Oracle uses one database block for each freelist group. Decision support system (DSS) and data warehouse database environments tend to benefit from larger block size values.
Range of values: {2048 to 32768, but your operating system may have a narrower range}
db_block_size=8192
DB_CACHE_ADVICE

Default: ON if STATISTICS_LEVEL = TYPICAL or ALL, else OFF
Enables or disables statistics gathering used for predicting behavior with different cache sizes through the V$DB_CACHE_ADVICE performance view.
Syntax: DB_CACHE_ADVICE = {ON | READY | OFF}
db_cache_advice=READY
DB_CACHE_SIZE

Default 0 ... if SGA_TARGET is set
Specifies the size of the DEFAULT buffer pool for buffers with the primary block size (the block size defined by the DB_BLOCK_SIZE initialization parameter).

Syntax: DB_CACHE_SIZE = integer [K | M | G]
db_cache_size=48M
DB_KEEP_CACHE_SIZE

Default: 0
Specifies the size of the KEEP buffer pool. The size of the buffers in the KEEP buffer pool is the primary block size (the block size defined by the DB_BLOCK_SIZE initialization parameter). Minimum: 0 (values greater than zero are rounded up to the nearest granule size) Maximum: operating system-dependent.
db_keep_cache_size=128K
DB_nK_CACHE_SIZE

Default: 0
Specifies the size of the cache for the nK buffers.Set this parameter only when DB_BLOCK_SIZE has a value other than nK. nK can have the values 2, 4, 8, 16, 32.
Syntax: db_{2 | 4 | 8 |16 | 32}K=integer{K | M | G}
Range of values: {0 or (values greater than zero are rounded up to the nearest granule size)}
db_4K_cache_size=8M
DB_RECYCLE_CACHE_SIZE

Default: 0
Specifies the size of the RECYCLE buffer pool. The size of the buffers in the RECYCLE pool is the primary block size (the block size defined by the DB_BLOCK_SIZE initialization parameter). Minimum: 0 (values greater than zero are rounded up to the nearest granule size) Maximum: operating system-dependent.
db_recycle_cache_size=64K sid='*'
 
Container Database
AUTOTASK_MAX_ACTIVE_PDBS

Default: 2
Enables specifying the maximum number of PDBs that can schedule automated maintenance tasks at the same time (during a maintenance window)
Range of values: [0 to count of PDBs}
autotask_max_active_pdbs=4
AUTO_START_PDB_SERVICES

Default: FALSE
???
Range of values: {FALSE | TRUE}
autotask_max_active_pdbs=4
CDB_CLUSTER

Default: FALSE
Not documented in the Database Reference but present in v$parameter
Range of values: {FALSE | TRUE}
cdb_cluster=TRUE
CDB_CLUSTER_NAME

Default: <no value>
Not documented in the Database Reference but present in v$parameter
Syntax: cdb_cluster_name=<string>
cdb_cluster_name=ora_pdb_clust
COMMON_USER_PREFIX

Default: C##
Specifies a prefix that the names of common users, roles, and profiles in a multitenant container database (CDB).
common_user_prefix=C$
CONTAINERS_PARALLEL_DEGREE

Default: 65535
Controls the degree of parallelism of a query involving containers()
containers_parallel_degree=64
DBNEST_ENABLE

Default: NONE
DbNest provides operating system resource isolation and management., file system isolation, and secure computing for PDBs.
Range of values: {NONE | CDB_RESOURCE_PDB_ALL}
dbnest_enable=cdb_resource_pdb_all sid='*'
DBNEST_PDB_FS_CONF

Default: <no value>
Specifies the DbNest file system configuration file for a PDB.
Syntax: {DBNEST_PDB_FS_CONF= 'pathname'
TBD
DB_PERFORMANCE_PROFILE

Default: <no value>
Specifies the performance profile for a database or a pluggable database (PDB)
Create the performance profile using DBMS_RESOURCE_MANAGER.CREATE_CDB_PROFILE_DIRECTIVE
TBD
DEFAULT_SHARING

Default: metadata for objects that support sharing
Sets the value of the sharing clause in statements creating objects in an application root
Syntax: DEFAULT_SHARING = {NONE | METADATA | DATA | EXTENDED DATA}
default_sharing=DATA
DISABLE_PDB_FEATURE

Default: 0
Not documented in the Database Reference but present in v$parameter
disable_pdb_feature=0
ENABLE_AUTOMATIC_MAINTENANCE_PDB

Default: TRUE
Enables or disables the running of automated maintenance tasks for all the PDBs in a CDB or for individual PDBs in a CDB
Range of values: {FALSE | TRUE}
enable_automatic_maintenance_pdb =FALSE
ENABLE_PLUGGABLE_DATABASE

Default: FALSE
Bootstrap initialization parameter to create a CDB. The Oracle 20c docs say the default value is FALSE but that makes no sense as all 20c databases must be CDBs.
Range of values: {FALSE | TRUE}
enable_pluggable_database=TRUE
ENABLED_PDBS_ON_STANDBY

Default: *
Specifies which pluggable databases (PDBs) to replicate on an Oracle Data Guard standby database
Syntax: ENABLED_PDBS_ON_STANDBY = PDB-list else '*' if none specified
enabled_pdbs_on_standby=pdbprod
MAX_DATAPUMP_JOBS_PER_PDB

Default: 100
Specifies the maximum number of concurrent Oracle Data Pump jobs per PDB
Range of values: {0 to 250 | AUTO}
max_datapump_jobs_per_pdb=AUTO
MAX_IOPS

Default: 0
Enables you to set the maximum number of I/Os that can be issued per second on a per pluggable database (PDB) basis. This parameter is used to throttle PDB I/Os. A very low value (for example, under 100 I/Os per second) is not recommended.
Range of values: {0 to the maximum integer value}
max_iops=0
MAX_MBPS

Default: 0
Enables you to set the maximum number of megabytes (MB) of I/Os issued per second on a per pluggable database (PDB) basis. This parameter is used to throttle PDB I/Os. A very low value (for example, under 25 MB per second) is not recommended.
Range of values: {0 to the maximum integer value}
max_mbps=0
MAX_PDBS

Default: 4098
Specifies a limit on the number of pluggable databases (PDBs) that can be created in a CDB or under an application root.
Range of values: {0 to 4098}
max_pdbs=24
NONCDB_COMPATIBLE

Default: FALSE
Specifies behavior similar to a non-CDB when issuing SQL commands inside a PDB in a CDB
Range of values: {FALSE | TRUE}
noncdb_compatible=FALSE
ONE_STEP_PLUGIN_FOR_PDB_WITH_TDE

Default: FALSE
If a PDB has Transparent Data Encryption-encrypted (TDEencrypted) tables or tablespaces, you can enable ONE_STEP_PLUGIN_FOR_PDB_WITH_TDE on the target CDB to simplify the move of TDE keys in a single step PDB move operation
Range of values: {FALSE | TRUE}
one_step_plugin_for_pdb_with_tde=TRUE
PDB_FILE_NAME_CONVERT

Default: <no value>
Maps names of existing files to new file names when processing a CREATE PLUGGABLE DATABASE statement, as well as when processing the ENABLE PLUGGABLE DATABASE clause of the CREATE DATABASE statement, if the file_name_convert_clause is not specified and Oracle Managed Files is not enabled.
PDB_FILE_NAME_CONVERT = 'string1' , 'string2' , 'string3' , 'string4' , ...
Where:
• string1 is the pattern of the existing filename
• string2 is the pattern of the new filename
• string3 is the pattern of the existing filename
• string4 is the pattern of the new filename
pdb_file_name_convert='/oradata/ver1/', '/oradata/ver1/s_', 'oradata/ver2/', 'oradata/ver2/s_'
PDB_LOCKDOWN

Default: <no value>
Specifies the PDB lockdown profile that applies to a PDB
Range of values: PDB_LOCKDOWN=pdb-lockdown-profile-name
ALTER SYSTEM SET pdb_lockdown = 'DEVEL_PDBS' SID='*' scope=BOTH;
PDB_OS_CREDENTIAL

Default: <no value>
Specifies the operating system user identity when interacting with the operating system from a PDB
Syntax: pdb_os_credential=<credential>
pdb_os_credential=oracli
PDB_TEMPLATE

Default: <no_value>
Not documented in the Database Reference but present in v$parameter
TBD
SCHEDULER_FOLLOW_PDBTZ

Default: FALSE
Make scheduler objects follow PDB TZ.
Range of values: {FALSE | TRUE}
service_name=orabase
STANDBY_PDB_SOURCE_FILE_DBLINK

Default: <no value>
Specifies the name of a database link that will be used to try to copy the datafiles from a source PDB to which the database link points
Syntax: standby_pdb_source_file_dblink=database_link_name
standby_pdb_source_file_dblink=hrdev2hrtest
STANDBY_PDB_SOURCE_FILE_DIRECTORY

Default: <no_value>
Specifies a directory location on the standby where source datafiles for instantiating the standby PDB may be found.
Syntax: standby_pdb_source_file_directory=datafiles-directory
TBD
TARGET_PDBS

Default: 9
Not documented in the Database Reference but present in v$parameter
target_pdbs=6
 
Cursors and Library Cache
CURSOR_BIND_CAPTURE_DESTINATION

Default: memory+disk
Determines the location at which bind variables that are captured from SQL cursors are available
Range of values: {OFF | MEMORY+DISK | MEMORY}
cursor_sharing=MEMORY
CURSOR_INVALIDATION

Default: IMMEDIATE
Controls whether deferred cursor invalidation or immediate cursor invalidation is used for DDL statements by default
Range of values: {DEFERRED | IMMEDIATE}
cursor_sharing=DEFERRED
CURSOR_SHARING

Default: Exact
FORCE: Forces statements that may differ in some literals, but are otherwise identical, to share a cursor, unless the literals affect the meaning of the statement.
EXACT: Only allows statements with identical text to share the same cursor.
Range of values: {EXACT | FORCE}
cursor_sharing=FORCE
CURSOR_SPACE_FOR_TME

Default: FALSE
???
Range of values: {FALSE | TRUE}
cursor_space_for_time=TRUE
OPEN_CURSORS

Default: 50
Specifies the maximum number of open cursors (handles to private SQL areas) a session can have at once. This parameter can be used to prevent a session from opening an excessive number of cursors.
Range of values: {0 - 65536}
open_cursors=320
SESSION_CACHED_CURSORS

Default: 50
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 will find the cursor in the cache and do not need to 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.
Range of values: {0 to an operating system dependent limit}
session_cached_cursors=220
 
Data Guard
ADG_ACCOUNT_INFO_TRACKING

Default: LOCAL
Controls login attempts of users on an Active Data Guard Standby by extending control of user account security information.
Range of values: {LOCAL | GLOBAL}
adg_accont_info_tracking=GLOBAL
ADG_REDIRECT_DML

Default: FALSE
Enable DML Redirection from an Active Data Guard Standby
Range of values: {FALSE | TRUE}
adg_accont_info_tracking=TRUE
DATA_GUARD_MAX_IO_TIME

Default: 240
Sets the maximum number of seconds that can elapse before a process is considered hung while performing a regular I/O operation in an Oracle Data Guard environment. Regular I/O operations include read, write, and status operations.

Range of values: 10 to 7200
data_guard_sync_latency=0
DATA_GUARD_MAX_LONGIO_TIME

Default: 240
Sets the maximum number of seconds that can elapse before a process is considered hung while performing a long I/O operation in an Oracle Data Guard environment. Long I/O operations include open and close operations.

Range of values: 10 to 7200
data_guard_sync_latency=0
DATA_GUARD_SYNC_LATENCY

Default: 0
Controls how many seconds the Log Writer (LGWR) process waits beyond the response of the first in a series of Oracle Data Guard SYNC redo transport mode connections.
Range of values: 0 to the number of seconds specified in the net_timeout parameter of the LOG_ARCHIVE_DEST_n parameter
data_guard_sync_latency=0
DATA_TRANSFER_CACHE_SIZE

Default: complex: read the docs
Sets the size of the data transfer cache (in bytes) used to receive data blocks (typically from a primary database in a Data Guard environment) for consumption by an instance during execution of an RMAN RECOVER ... NONLOGGED BLOCK command.
Range of values: {0 - 512M}
data_transfer_cache_size=0
DB_FILE_NAME_CONVERT

Defalt: NULL
Useful for creating a duplicate database for recovery purposes. You can also use DB_FILE_NAME_CONVERT to rename the datafiles in the clone controlfile when setting up a clone database during tablespace point-in-time recovery.
db_file_name_convert='/dbs/proda/','/dbs/prodb/s_','dbs/proda/ ','dbs/prodb/s_'
DG_BROKER_CONFIG_FILE1
DG_BROKER_CONFIG_FILE2

Default: Operating system dependent
Specifies the names for the Data Guard broker configuration files. Every database that is part of a Data Guard broker configuration has two broker configuration files, which contain entries that describe the state and properties of the configuration (such as the sites and databases that are part of the configuration, the roles and properties of each of the databases, and the state of each of the elements of the configuration). Two files are provided so as to always maintain the last known good state of the configuration.

If DG_BROKER_CONFIG_FILEn is not explicitly defined, then it is set to an operating system-specific default value at instance startup. The parameter can only be altered when the DMON (Data Guard broker) process is not running.
Range of values: per "n" listed: One filename
dg_broker_config_file=$ORACLE_BASE/admin/orabasee/dr1db_orabase.dat
dg_broker_config_file=$ORACLE_BASE/admin/orabase/dr2db_orabase.dat
DG_BROKER_START

Default: FALSE
Enables Oracle to determine whether or not the DMON (Data Guard broker) process should be started.
Range of values: {FALSE | TRUE}
dg_broker_start=TRUE
ENABLE_IMC_WITH_MIRA

Default: FALSE
Enables or disables the In-Memory Column Store and Oracle Data Guard Multi-Instance Redo Apply, at the same time, on an Active Data Guard standby database.

Range of values: {FALSE | TRUE}
data_guard_sync_latency=0
FAL_CLIENT

Default: <no value>
Specifies the FAL (fetch archive log) client name that is used by the FAL service
Syntax: fal_client=<db_unique_name>
fal_client=proda
FAL_SERVER

Default: <no value>
Specifies the FAL (fetch archive log) server for a standby database
Syntax: fal_server=<db_unique_name>
fal_server=prodb
LOG_ARCHIVE_CONFIG

Default: NULL
Enables or disables the sending of redo logs to remote destinations and the receipt of remote redo logs, and specifies the unique database names (DB_UNIQUE_NAME) for each database in the Data Guard configuration.
Syntax: LOG_ARCHIVE_CONFIG = {[SEND | NOSEND ] [RECEIVE | NORECEIVE ]
[DG_CONFIG=(remote_db_unique_name1 [, ... remote_db_unique_name30) | NODG_CONFIG]}
log_archive_config='DG_CONFIG=(proda,prodb)'
LOG_FILE_NAME_CONVERT

Default: <no_value>
Converts the filename of a new log file on the primary database to the filename of a log file on the standby database. If you add a log file to the  primary database, you must add a corresponding file to the standby database.
log_file_name_convert='/dbs/proda/','/dbs/prodb/s_','dbs/proda/ ','dbs/prodb/s_'
STANDBY_DB_PRESERVE_STATES

Default: NONE
In a physical standby database open in real-time query mode controls whether user sessions and other internal states of the instance are retained when a readable physical standby database is converted to a primary database.
Syntax: STANDBY_DB_PRESERVE_STATES = {ALL | BUFFER | NONE | SESSION}
standby_db_preserve_states=BUFFER
STANDBY_FILE_MANAGEMENT

Default: MANUAL
Enables or disables automatic standby file management. When automatic standby file management is enabled, operating system file additions and deletions on the primary database are replicated on the standby database. STANDBY_FILE_MANAGEMENT is only applicable on physical standbys.
Range of Values: {AUTO | MANUAL}
standby_file_management=ALL
 
Database / Instance / Identification
DB_DOMAIN

Default: NULL
In a distributed database system, DB_DOMAIN specifies the logical location of the database within the network structure.
Range of values is any legal string of name components, separated by periods and up to 128 characters long (including the periods). The value cannot be NULL.
db_domain='MLIB.ORG'
DB_NAME

Default: <database (not instance) name>
Specifies a database identifier of up to 8 characters. This parameter must be specified and must correspond to the name specified in the CREATE DATABASE statement.
db_name=orabase
 
Diagnostics / Statistics
BACKGROUND_CORE_DUMP

Default: PARTIAL
Specifies whether Oracle includes the SGA in the core file for Oracle background processes.
Range of values: {PARTIAL | FULL}
background_core_dump=partial
BACKGROUND_DUMP_DEST

Default: operating system dependant
Specifies the pathname (directory or disk) where debugging trace files for the background processes.
Syntax: background_dump_dest = {pathway | directory}
background_core_dump=partial
CORE_DUMP_DEST
Default: {ORACLE_HOME}/dbs
Primarily a UNIX parameter not supported on all platforms. Specifies the directory for core file dumps
core_dump_dest='/app/oracle/product/diag/rdbms/orabase/orabase/cdump'
DB_BLOCK_CHECKING

Default FALSE
Controls whether Oracle performs block checking for data blocks. When this parameter is set to TRUE, Oracle performs block checking for all data blocks. When it is set to false, Oracle does not perform block checking for blocks in the user tablespaces. However, block checking for the SYSTEM tablespace is always turned on.
Syntax: DB_BLOCK_CHECKING = {FALSE | OFF | LOW | MEDIUM | TRUE | FULL}
db_block_checking=FULL
DB_BLOCK_CHECKSUM

Default: TYPICAL
Determines whether DBWn and the direct loader will calculate a checksum (a number calculated from all the bytes stored in the block) and store it in the cache header of every data block when writing it to disk. Checksums are verified when a block is read-only if this parameter is TRUE and the last write of the block stored a checksum. In addition, Oracle gives every log block a checksum before writing it to the current log.
Syntax: DB_BLOCK_CHECKSUM = {OFF | FALSE | TYPICAL | TRUE | FULL}
db_block_checksum=TRUE
DIAGNOSTIC_DEST

Default: derived from $ORACLE_BASE
Replacement for BDUMP and UDUMP related parameters. Points to ADR_BASE
Syntax: diagnostic_dest={pathname | directory}
diagnostic_dest='/u03/orabase20/'
DIAGNOSTICS_CONTROL

Default: IGNORE
Enables control and monitoring of users that can perform potentially unsafe database diagnostic operations.
Range of values: {ERROR | WARNING | IGNORE}
diagnostic_control='/u03/orabase20/'
ENABLE_DDL_LOGGING

Default: FALSE
Enables or disables the writing of DDL statements to the alert log
Range of values: {FALSE | TRUE}
enable_ddl_logging=TRUE
EVENT

Default: <none specified>
Debug event control - default null string [CHAR]
Do not alter the value of this parameter except under the supervision of Oracle Support Services staff
MAX_DUMP_FILE_SIZE

Default: UNLIMITED
Specifies the maximum size of trace files (excluding the alert file)
Range of values: 0 to unlimited in the form <integer>[K | M | G | UNLIMITED]
max_dump_file_size=1G
SHADOW_CORE_DUMP

Default: NONE
Specifies whether Oracle includes the SGA in the core file for foreground (client) processes.
Range of values: {FULL | NONE} | PARTIAL}
shadow_core_dump=FULL
STATISTICS_LEVEL

Default: TYPICAL
Specifies the level of collection for database and operating system statistics. The Oracle Database collects these statistics for a variety of purposes, including making self-management decisions.
Range of values: {ALL | BASIC | TYPICAL}
statistics_level=ALL
TIMED_OS_STATISTICS

Default: 0 (seconds)  if STATISTICS_LEVEL is BASIC or TYPICAL
When TRUE statistics are collected and stored in trace files or displayed in the V$SESSTATS and V$SYSSTATS dynamic performance views
Range of values: {0 | 60} - 0 for BASIC and TYPICAL, 60 for ALL
timed_os_statistics=5
TIMED_STATISTICS

Default: TRUE
When TRUE statistics are collected and stored in trace files or displayed in the V$SESSTATS and V$SYSSTATS dynamic performance views
Range of values: {FALSE | TRUE} - TRUE if STATISTICS_LEVEL is TYPICAL or ALL, FALSE if BASIC
timed_statistics=FALSE
TRACE_ENABLED

Default: TRUE
Controls tracing of the execution history, or code path, of Oracle. Oracle Support Services uses this information for debugging.
Range of values: {FALSE | TRUE}
trace_enable=FALSE
TRACEFILE_IDENTIFIER

Default: <no value>
Specifies a custom identifier that becomes part of the Oracle Trace file name. A custom identifier is used to identify a trace file simply from its name and without having to open it or view its contents.
Syntax: trace_file_identifier=<string>
tracefile_identifier='test_plan1';
 
Exadata
CELL_OFFLOAD_COMPACTION

Default: ADAPTIVE
Configures cell packet compaction strategy
Range of values: {ADAPTIVE |(if others they appear to be undocumented)}
cell_offload_compaction=ADAPTIVE
CELL_OFFLOAD_DECRYPTION

Default: TRUE
Enables SQL processing offload of encrypted data to cells
Range of values: {FALSE | TRUE}
cell_offload_decryption=TRUE
CELL_OFFLOAD_PARAMETERS

Default: Not set except for Exadata variants
Sets Additional cell offload parameters
TBD
CELL_OFFLOAD_PLAN_DISPLAY

Default: AUTO
Sets cell offload explain plan display
cell_offload_plan_display=MANUAL
CELL_OFFLOAD_PROCESSING

Default: TRUE
Enables SQL processing offload to cells
Range of values: {FALSE | TRUE}
cell_offload_processing=FALSE
CELL_OFFLOADGROUP_NAME

Default: Not set except for Exadata variants
Sets the offload group name
TBD
DB_FLASH_CACHE_FILE

Default: <no value>
Specifies file name(s) for the flash memory or disk group representing a collection of flash memory, for use with Database Smart Flash Cache
Syntax: DB_FLASH_CACHE_FILE = filename [,filename]... | disk group
db_flash_cache_file = /dev/raw/sda, /dev/raw/sdb, /dev/raw/sdc
DB_FLASH_CACHE_SIZE

Default: 0
Specifies the size of the Database Smart Flash Cache (flash cache). This parameter may only be specified at instance startup.
Syntax: DB_FLASH_CACHE_SIZE = integer [K | M | G] [, integer [K | M | G]]...
db_flash_cache_size= 24G, 32G, 64G
 
File Locations, Names, and Sizes
CONTROL_FILES

Default: Operating system dependant
Control file names list [file_path,file_path..]
*.control_files='c:\oracle\product\oradata\orabase\control01.ctl',  'c:\oracle\product\oradata\orabase\control02.ctl'
DB_CREATE_FILE_DEST

Default: NULL
Specifies the default location for Oracle-Managed datafiles (OMF).
Syntax: db_create_file_dest = <directory | disk group>
db_create_file_dest='/u01/oradata/orabase'
DB_CREATE_ONLINE_LOG_DEST_n

Default: NULL
Specifies the default location for Oracle-managed control files and online redo logs.
Syntax: DB_CREATE_ONLINE_LOG_DEST_[1 | 2 | 3 | 4 | 5] = directory | disk group
db_create_online_log_dest_1='/app/oracle/product/oradata/logs'
DB_FILES

Default: 200
Specifies the maximum number of database files that can be opened for this database.
Minimum: the largest among the absolute file numbers of the datafiles in the database
Maximum: operating system-dependent
db_files=100
DB_RECOVERY_FILE_DEST

Default: <no default>
Specifies the default location for the flash recovery area.
Syntax: DB_RECOVERY_FILE_DEST = {DIRECTORY | DISK GROUP}
db_recovery_file_dest='c:\oracle\product\flash_recovery_area'
DB_RECOVERY_FILE_DEST_SIZE

Default: 0
Specifies (in bytes) the hard limit on the total space to be used by target database recovery files created in the fast recovery area
Syntax: DB_RECOVERY_FILE_DEST_SIZE = integer [K | M | G]
db_recovery_file_dest_size=4G SID='*'
IFILE

Default: <no default>
Embed the named parameter file in the init.ora as it is read.
ifile=?/dbs/proda_dg.ora
SPFILE

Default: $ORACLE_HOME/dbs/spfile.ora
The value of this parameter is the name of the current server parameter file (SPFILE) in use. This parameter can be defined in a client side PFILE to indicate the name of the server parameter file to use.
spfile=/u01/orahome20/db_home/dbs/spfileorabase.ora
 
Flashback
DB_FLASHBACK_LOG_DEST_SIZE

Default: 0
???
db_flashback_log_dest_size=???
DB_FLASHBACK_RETENTION_TARGET

Default: 1440 (minutes)
Specifies the upper limit (in minutes) on how far back in time the database may be flashed back.
Range of values: 0 to 231 - 1 (max value represented by 32 bits)
db_flashback_retention_target=2880
RECYCLEBIN

Default: ON
Specifies if the recyclebin holds dropped tables and associated indexes.
Range of values: {ON | OFF}
recyclebin=ON
 
In-Memory
INMEMORY_ADG_ENABLED

Default: TRUE
Specifies whether in-memory for Active Data Guard is enabled in addition to the in-memory cache size
Range of values: {FALSE | TRUE}
inmemory_adg_enabled=TRUE
INMEMORY_AUTOMATIC_LEVEL

Default: OFF
Enable the Automatic In-Memory feature, which automates the management of the In-Memory Column Store to help ensure that the working data set is in the IM column store at all times.
Syntax: INMEMORY_AUTOMATIC_LEVEL = {LOW | MEDIUM | OFF}
inmemory_automatic_level=LOW
INMEMORY_CLAUSE_DEFAULT

Default: an empty string
Default in-memory clause for new tables. This is complex so read the online docs.
TBD
INMEMORY_DEEP_VECTORIZATION

Default: TRUE
Enables or disables the deep vectorization framework.
Range of values: {FALSE | TRUE}
TBD
INMEMORY_EXPRESSIONS_USAGE

Default: ENABLE
Controls which In-Memory Expressions are populated into the In-Memory Column Store and are available for queries
Range of values: {DISABLE | ENABLE}
inmemory_expressions_usage=ENABLE
INMEMORY_FORCE

Default: DEFAULT
Force tables to be in-memory or not
Range of values: {DEFAULT | OFF}
inmemory_force=OFF sid='*'
INMEMORY_MAX_POPULATE_SERVERS

Default: calculation: read the docs
Maximum inmemory populate servers
Range of values: {0 to a value based on the number of available cpu cores}
inmemory_max_populate_servers=2 sid='*'
INMEMORY_OPTIMIZED_ARITHMETIC

Default: DISABLE
Encodes the NUMBER data type in in-memory tables compressed with QUERY LOW as a fixed-width native integer scaled by a common exponent.
Syntax: INMEMORY_OPTIMIZED_ARITHMETIC = {ENABLE | DISABLE}
inmemory_optimized_arithmetic=ENABLE sid='*'
INMEMORY_PREFER_XMEM_MEMCOMPRESS

Default: <no_value>
Not documented in the Database Reference but present in v$parameter
Range of values: Not documented
TBD
INMEMORY_PREFER_XMEM_PRIORITY

Default: <no_value>
Not documented in the Database Reference but present in v$parameter
Range of values: Not documented
TBD
INMEMORY_QUERY

Default: ENABLE
Specifies whether in-memory queries are allowed
Range of values: {ENABLE | DISABLE}
inmemory_query=ENABLE sid='*'
INMEMORY_SIZE

Default: 0
Size in bytes of in-memory area
Range of values: {0 to the amount of memory left in the SGA after other allocations}
inmemory_size=1073741824 sid='*'
INMEMORY_TRICKLE_REPOPULATE
_SERVERS_PERCENT

Default: 1
In-memory trickle repopulate servers percent
Range of values: {0 to 50}
inmemory_trickle_repopulate_servers_percent=1 sid='*'
INMEMORY_VIRTUAL_COLUMNS

Default: MANUAL
Enable to store virtual columns in the InMemory area
Range of values: {ENABLE | MANUAL | DISABLE}
inmemory_virtual_columns=ENABLE sid='*'
INMEMORY_XMEM_SIZE

Default: 0
Not documented in the Database Reference but present in v$parameter
Range of values: Not documented
inmemory_xmem_size=0 sid='*'
OPTIMIZER_INMEMORY_AWARE

Default: TRUE
Optimizer in-memory columnar awareness
Range of values: {FALSE | TRUE}
optimizer_inmemory_aware=TRUE sid='*'
 
I/O
DBWR_IO_SLAVES

Default: 0
Relevant only on systems with only one database writer process (DBW0). It specifies the number of I/O server processes used by the DBW0 process. The DBW0 process and its server processes always write to disk. By default, the value is 0 and I/O server processes are not used.

If you set DBWR_IO_SLAVES to a nonzero value, the number of I/O server processes used by the ARCH and LGWR processes is set to 4. However, the number of I/O server processes used by Recovery Manager is set to 4 only if asynchronous I/O is disabled (either your platform does not support asynchronous I/O or disk_asynch_io is set to false).

Typically, I/O server processes are used to simulate asynchronous I/O on platforms that do not support asynchronous I/O or that implement it inefficiently. However, you can use I/O server processes even when asynchronous I/O is being used. In that case the I/O server processes will use asynchronous I/O.

I/O server processes are also useful in database environments with very large I/O throughput, even if asynchronous I/O is enabled.
Range of values: {0 to operating system-dependent}
dbwr_io_slaves=1 sid='*'
DB_FILE_MULTIBLOCK_READ_COUNT

Default: platform dependant
Use to minimize I/O during table scans. It specifies the maximum number of blocks read in one I/O operation during a sequential scan (applies to full table scans and index fast full scans, so non-random I/O). The total number of I/Os needed to perform a full table scan depends on such factors as the size of the table, the multiblock read count, and whether parallel execution is being utilized for the operation.

Online transaction processing (OLTP) and batch environments typically have values in the range of 4 to 16 for this parameter. DSS and data warehouse environments tend to benefit most from maximizing the value of this parameter. The optimizer is more likely to choose a full table scan over an index if the value of this parameter is high.

The maximum value is always less than the operating system's maximum I/O size expressed as Oracle blocks ((max I/Osize) / DB_BLOCK_SIZE). If you set this parameter to a value greater than the maximum, Oracle uses the maximum.

Depending on your exact version and the use of system statistics with version 9+ larger values for the db_file_multiblock_read_count parameter influence the cost based optimizer to favor full table scans over using indexes.
Range of values: Operating system-dependent
db_file_multiblock_read_count=128 sid='*'

ALTER SYSTEM RESET db_file_multiblock_read_count SID='*' SCOPE=SPFILE;
DB_WRITER_PROCESSES

Default: 1 or CPU_COUNT / 8, whichever is greater
Specifies the initial number of database writer processes for an instance.
Range of values: {1 to 100}
db_writer_processes=2 sid='*'
DISK_ASYNCH_IO

Default: TRUE
Controls whether I/O to datafiles, control files, and logfiles is asynchronous (that is, whether parallel server processes can overlap I/O requests with CPU processing during table scans. Oracle recommends that you leave this parameter set to its default value. However, if the asynchronous I/O implementation is not stable, you can set this parameter to false to disable asynchronous I/O. If your platform does not support asynchronous I/O to disk, this parameter has no effect.

If you set DISK_ASYNCH_IO to false, then you should also set DBWR_IO_SLAVES to a value other than its default of zero in order to simulate asynchronous I/O.
Range of values: {FALSE | TRUE}
disk_asynch_io=FALSE sid='*'
FILEIO_NETWORK_ADAPTERS

Default: <no value>
Specifies a list of network adapters that can be used to access the disk storage. On platforms where the database files reside in network attached storage, this parameter provides the storage access library the list of network adapters that can be used to access the storage.
fileio_metwork_adapters=netapp1.mlib.org sid='*'
FILESYSTEMIO_OPTIONS

Default: operating system dependent
Enables or disable asynchronous I/O or direct I/O on file system files. This parameter is platform-specific and has a default value that is best for a particular platform.
Range of values: {ASYNCH, DIRECTIO, SETALL, NONE}
filesystemio_options=setall SCOPE=SPFILE sid='*'
READ_ONLY_OPEN_DELAYED

Default: FALSE
Determines when datafiles in read-only tablespaces are accessed.
If TRUE the datafiles are accessed for the first time only when an attempt is made to read data stored within them.
If FALSE the datafiles are accessed at database open time.
Range of values: {FALSE | TRUE}
read_only_open_delayed=TRUE sid='*'
 
Java
JAVA_JIT_ENABLED

Default: Operating system dependant
Enables or disables the Just-in-Time (JIT) compiler for the Oracle Java Virtual Machine (OracleJVM) environment.
Range of values: {FALSE | TRUE}
java_jit_enabled=TRUE sid='*'
JAVA_MAX_SESSIONSPACE_SIZE

Default: 0
Java session space is the memory that holds Java state from one database call to another. JAVA_MAX_SESSIONSPACE_SIZE specifies (in bytes) the maximum amount of session space made available to a Java program executing in the server. When a user's session-duration Java state attempts to exceed this amount, the Java virtual machine kills the session with an out-of-memory failure.
Range of values: 0 to 2GB-1 byte
java_max_sessionspace_size=0 sid='*'
JAVA_POOL_SIZE

Default: 0 (in most situations)
Specifies (in bytes) the size of the Java pool, from which the Java memory manager allocates most Java state during runtime execution. This memory includes the shared in-memory representation of Java method and class definitions, as well as the Java objects that are migrated to the Java session space at end-of-call.
Syntax: java_pool_size=<integer>  [K | M | G]
java_pool_size=0 sid='*'
JAVA_RESTRICT

Default: NONE
Not documented in the Database Reference but present in v$parameter
Range of values: {NONE | <possibly others that are undocumented}
java_restrict=0 sid='*'
JAVA_SOFT_SESSIONSPACE_LIMIT

Default: 0
Java session space is the memory that holds Java state from one database call to another. JAVA_SOFT_SESSIONSPACE_LIMIT specifies (in bytes) a soft limit on Java memory usage in a session, as a means to warn you if a user's session-duration Java state is using too much memory. When a user's session-duration Java state exceeds this size, Oracle generates a warning that goes into the trace files.
Range of values: 0 to 2GB-1 byte
java_soft_sessionspace_limit=0 sid='*'
 
LDAP
ALLOW_GLOBAL_DBLINKS

Default: FALSE
Specifies whether LDAP lookup for database links is allowed for the database
Range of values: {FALSE | TRUE}
allow_global_dblinks=FALSE sid='*'
LDAP_DIRECTORY_ACCESS

Default: NONE
Specifies whether Oracle refers to Oracle Internet Directory for user authentication information. If directory access is turned on, then this parameter also specifies how users are authenticated.
Range of values: {NONE | PASSWORD | SSL}
ldap_directory_access=NONE sid='*'
LDAP_DIRECTORY_SYSAUTH

Default: NO
Enables or disables directory-based authorization for SYSDBA, SYSOPER, SYSBACKUP, SYSDG, SYSKM
Range of values: {NO | YES}
ldap_directory_sysauth=NO sid='*'
 
Listener
FORWARD_LISTENER

Default: NULL
Specifies the name of a listener to which a connection must be forwarded by an existing set of remote listeners
Syntax: (FORWARD_LISTENER=["]listener_address[,...]["])
TBD
LISTENER_NETWORKS

Default <none defined>
Specifies one or more sets of local & remote listeners for cross-registration. All listeners within the same network_name will cross-register.
Syntax: LISTENER_NETWORKS =
'((NAME=network_name)
  (LOCAL_LISTENER=["]listener_address[,...]["])
  (FORWARD_LISTENER=["]listener_address[,...]["])
 [(REMOTE_LISTENER=["]listener_address[,...]["])])'
 [,...]
local_listener=listenerdev sid='*'
LOCAL_LISTENER

Default: (ADDRESS = (PROTOCOL=TCP)(HOST=hostname)(PORT=1521))
Specifies a network name that resolves to an address or address list of Oracle Net local listeners (that is, listeners that are running on the same machine as this instance). The address or address list is specified in the TNSNAMES.ORA file or other address repository as configured for your system.
Syntax: LOCAL_LISTENER = <network_name>
local_listener=(PROTOCOL=TCP)(HOST=bigdog.mlog.org)(PORT=1521)) sid='*'
REMOTE_LISTENER

Default: <no value>
Specifies a network name that resolves to an address or address list of Oracle Net remote listeners (that is, listeners that are not running on the same machine as this instance). The address or address list is specified in the TNSNAMES.ORA file or other address repositories.
Syntax: (REMOTE_LISTENER=["]listener_address[,...]["])
TBD
 
Memory Allocation, Sizing, and Usage
ALLOW_GROUP_ACCESS_TO_SGA

Default: FALSE
Controls group access to shared memory on UNIX platforms allowing read access for SGA to users of Oracle owner group
Range of values: {FALSE | TRUE}
allow_group_access_to_sga=TRUE
BITMAP_MERGE_AREA_SIZE

Default: 1048576 for W2K & Linux
For systems containing bitmap indexes: Specifies the amount of memory Oracle uses to merge bitmaps retrieved from a range scan of the index. The default value is 1 MB. A larger value usually improves performance, because the bitmap segments must be sorted before being merged into a single bitmap.
Range of values: Operating system-dependent
bitmap_merge_area_size=1048576
CREATE_BITMAP_AREA_SIZE

Default: 0
Relevant only for systems containing bitmap indexes. It specifies the amount of memory (in bytes) allocated for bitmap creation. The default value is 8 MB. A larger value may speed up index creation.
create_bitmap_area_size=8388608
DB_BIG_TABLE_CACHE_PERCENT_TARGET

Default: 0
Specifies the cache section target size for automatic big table caching, as a percentage of the buffer cache
Range of values: {0 - 90}
db_big_table_cache_percent_target=0
HASH_AREA_SIZE

Default: Derived: 2 * SORT_AREA_SIZE
Relevant to parallel execution operations and to the query portion of DML or DDL statements. It specifies the maximum amount of memory, in bytes, to be used for hash joins
hash_area_size=2097152
HI_SHARED_MEMORY_ADDRESS

Default: 0
Specifies the starting address at runtime of the SGA. Ignored on platforms that specify the value at link time.
hi_shared_memory_address=0
LARGE_POOL_SIZE

Default: 0
Specifies (in bytes) the size of the large pool allocation heap. The large pool allocation heap is used in shared server systems for session memory, by parallel execution for message buffers, and by backup processes for disk I/O buffers. Parallel execution allocates buffers out of the large pool only when SGA_TARGET is set.
If set to 0 the size is managed by Oracle.
Range of value: Minimum is the granule size, Maximum is operating system dependent
large_pool_size=0
LOCK_SGA

Default: False
Locks the entire SGA into physical memory. It is usually advisable to lock the SGA into real (physical) memory, especially if the use of virtual memory would include storing some of the SGA using disk space. This parameter is ignored on platforms that do not support it.
Range of values: {FALSE | TRUE}
lock_sga=FALSE
LOG_BUFFER

Default: <no default>
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.
Range of values: {2 MB to 32 MB}
log_buffer=32768000
MEMORY_MAX_SIZE

Default: 0
???
memory_max_size=???
MEMORY_MAX_TARGET

Default: 0
Specifies the maximum value to which a DBA can set the MEMORY_TARGET initialization parameter. See the description of MEMORY_TARGET for more information about how the settings of MEMORY_MAX_TARGET and MEMORY_TARGET affect each other.
Syntax: memory_max_target=integer{K | M | G}
memory_max_target=820M
MEMORY_TARGET

Default: 0
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.
Syntax: memory_target=integer{K | M | G}
memory_target=820M
OBJECT_CACHE_MAX_SIZE_PERCENT

Default: 10
The object cache is a memory block on the client that allows applications to store entire objects and to navigate among them without round trips to the server. OBJECT_CACHE_MAX_SIZE_PERCENT specifies the percentage of the optimal cache size that the session object cache can grow past the optimal size. The maximum size is equal to the optimal size plus the product of this percentage and the optimal size. When the cache size exceeds this maximum size, the system will attempt to shrink the cache to the optimal size.
Range of values: {0 to operating system dependent maximum}
object_cache_max_size_percent=10
OBJECT_CACHE_OPTIMAL_SIZE

Default: 10240000 (100K)
Specifies (in bytes) the size to which the session object cache is reduced when the size of the cache exceeds the maximum size
Range of values: {10K to operating system dependent maximum}
object_cache_optimal_size=102400
OLAP_PAGE_POOL_SIZE

Default: 0
Specifies (in bytes) the size of the OLAP page pool
Range of values: {0 to 2G}
Syntax: olap_page_pool_size=integer{K | M | G}
olap_page_pool_size=0
PGA_AGGREGATE_LIMIT

Default: <complex: read the Database Reference doc>
Specifies a limit on the aggregate PGA memory consumed by the instance
Syntax: PGA_AGGREGATE_LIMIT = integer{K | M | G}
pga_aggregate_limit=2G
PGA_AGGREGATE_TARGET

Default: 10 MB or 20% of the size of the SGA, whichever is greater
Specifies the target aggregate PGA memory available to all server processes attached to the instance
Range of values: Minimum: 10 MB, Maximum: 4096 GB - 1
pga_aggregate_target=0
PMEM_FILESTORE

Default: <none defined>
Specifies the Persistent Memory Filestore that mounted automatically at instance startup
Syntax: pmem_filestore=('mount_point','backing_file' [,'mount_point','backing_file', ....]}
pmem_filestore=('/u03/oracle/pmemfs/perfile1','/u04oracle/pmembf/bakfile1')
PRE_PAGE_SGA

Default: TRUE
Specifies whether Oracle reads the entire SGA into memory at instance startup so that O/S page table entries are pre-built for the SGA
Range of values: {FALSE | TRUE}
pre_page_sga=TRUE
SGA_MAX_SIZE

Default: <derived from initial size at startup>
Specifies the maximum size of the SGA for the lifetime of the instance
Range of values: {0 to operating system-dependent}
sga_max_size=4G
SGA_MIN_SIZE

Default: 0
Specifies the minimum size of the SGA for the lifetime of the instance
Range of values: {0 to 50% of SGA_TARGET}
Syntax: SGA_MIN_SIZE = integer{K | M | G}
sga_min_size=0
SGA_TARGET

Default: <derived>
Specifies the total size of all SGA components. If SGA_TARGET is specified, then the following memory pools are automatically sized:
  • Buffer cache (DB_CACHE_SIZE)
  • Shared pool (SHARED_POOL_SIZE)
  • Large pool (LARGE_POOL_SIZE)
  • Java pool (JAVA_POOL_SIZE)
  • Streams pool (STREAMS_POOL_SIZE)
If these automatically tuned memory pools are set to nonzero values, then those values are used as minimum levels by Automatic Shared Memory Management. You would set minimum values if an application component needs a minimum amount of memory to function properly.

The following pools are manually sized components and are not affected by Automatic Shared Memory Management:
  • Log buffer
  • Other buffer caches, such as KEEP, RECYCLE, and other block sizes
  • Fixed SGA and other internal allocations
Range of values: {64 MB to operating system-dependent}
sga_target=0 sid='*'
SHARED_MEMORY_ADDRESS

Default: 0
SHARED_MEMORY_ADDRESS and HI_SHARED_MEMORY_ADDRESS specify the starting address at runtime of the system global area (SGA). This parameter is ignored on the many platforms that specify the SGA's starting address at linktime.

This parameter to specifies the entire address on 32-bit platforms and to specify the low-order 32 bits of a 64-bit address on 64-bit platforms. Use HI_SHARED_MEMORY_ADDRESS to specify the high-order 32 bits of a 64-bit address on 64-bit platforms. If both parameters are 0 or unspecified, the SGA address defaults to a platform-specific location.
shared_memory_address=0 sid='*'
SHARED_POOL_RESERVED_SIZE

Default: 5% of the value of SHARED_POOL_SIZE
Specifies (in bytes) the shared pool space that is reserved for large contiguous requests for shared pool memory.
Range of values: {5000 to 50% of SHARED_POOL_SIZE}
share_pool_reservde_size=16567500 sid='*'
SHARED_POOL_SIZE

Default: 0
Specifies (in bytes) the size of the shared pool. The shared pool contains shared cursors, stored procedures, control structures, and other structures. Larger values may improve performance in multi-user systems but if the pool is too large time may be wasted searching it.
shared_pool_size=0 sid='*'
SORT_AREA_RETAINED_SIZE

Default: 0 (Derived from SORT_AREA_SIZE)
Specifies (in bytes) the maximum amount of the user global area (UGA) memory retained after a sort run completes. The retained size controls the size of the read buffer, which Oracle uses to maintain a portion of the sort in memory. This memory is released back to the UGA, not to the operating system, after the last row is fetched from the sort space.
Range of values: {2 data blocks to the value of SORT_AREA_SIZE}
sort_area_retained_size=0
SORT_AREA_SIZE

Default: 65536
Specifies (in bytes) the maximum amount of memory Oracle will use for a sort. After the sort is complete, but before the rows are returned, Oracle releases all of the memory allocated for the sort, except the amount specified by the SORT_AREA_RETAINED_SIZE parameter. After the last row is returned, Oracle releases the remainder of the memory.
Range of values: {6 data blocks to an operating system dependent value}
sort_area_size=1048576 sid='*'
STREAMS_POOL_SIZE

Default: 0
Oracle's Automatic Shared Memory Management feature manages the size of the Streams pool when the SGA_TARGET initialization parameter is set to a nonzero value. If the STREAMS_POOL_SIZE initialization parameter also is set to a nonzero value, then Automatic Shared Memory Management uses this value as a minimum for the Streams pool.

If the STREAMS_POOL_SIZE initialization parameter is set to a nonzero value, and the SGA_TARGET parameter is set to 0 (zero), then the Streams pool size is the value specified by the STREAMS_POOL_SIZE parameter, in bytes.

If both the STREAMS_POOL_SIZE and the SGA_TARGET initialization parameters are set to 0 (zero), then, by default, the first use of Streams in a database transfers an amount of memory equal to 10% of the shared pool from the buffer cache to the Streams pool.
Range of values: {0 to operating system dependent}
streams_pool_size=0 sid='*'
USE_LARGE_PAGES

Default: TRUE
Specify the management of the database's use of large pages for SGA memory
Range of values: {FALSE | ONLY | TRUE}
use_large_pages=ONLY sid='*'
 
Miscellaneous
ACTIVE_DATA_CACHE

Default: FALSE
???
Range of values: {FALSE | TRUE}
active_data_cache=TRUE sid='*'
ACTIVE_LEGACY_RECO_PROTOCOL

Default: TRUE
???
Range of values: {FALSE | TRUE}
allow_legacy_reco_protocol=FALASE sid='*'
ALLOW_ROWID_COLUMN_TYPE

Default: FALSE
Not documented in the Database Reference but present in v$parameter
Range of values: {FALSE | TRUE}
allow_rowid_column_type=TRUE sid='*'
APPROX_FOR_AGGREGATION

Default: FALSE
Replaces exact query processing for aggregation queries with approximate query processing.
Range of values: {FALSE | TRUE}
approx_for_aggregation=TRUE sid='*'
APPROX_FOR_COUNT_DISTINCT

Default: FALSE
Replaces COUNT (DISTINCT expr) queries with APPROX_COUNT_DISTINCT queries
Range of values: {FALSE | TRUE}
approx_for_count_distinct=TRUE sid='*'
APPROX_FOR_PERCENTILE

Default: None
Exact percentile functions to their approximate percentile function counterparts
Syntax: APPROX_FOR_PERCENTILE = {NONE | PERCENTILE_CONT | PERCENTILE_CONT DETERMINISTIC | PERCENTILE_DISC | PERCENTILE_DISC DETERMINISTIC ALL | ALL DETERMINISTIC}
approx_for_percentile=ALL DETERMINISTIC sid='*'
COMPATIBLE

Default: 20.1.0.0
Allows you to use a new release of Oracle, while at the same time guaranteeing backward compatibility with an earlier release.
compatible=19.3.0 sid='*'
CONNECTION_BROKERS

No Default: See docs
Determines how dedicated servers are spawned
Syntax: CONNECTION_BROKERS = broker_description[,...]
connection_brokers=((TYPE=DEDICATED)(BROKERS=1)), ((TYPE=EMON)(BROKERS=1)) sid='*'
CONTROL_MANAGEMENT_PACK_ACCESS

EE Default: DIAGNOSTIC+TUNING
Specifies which of the Server Manageability Packs should be active
Range of values: {NONE | DIAGNOSTIC | DIAGNOSTIC+TUNING}
control_management_pack_access=NONE sid='*'
CURRENT_TIME_AT_DBTIMEZONE

Default: FALSE
???
Range of values: {FALSE | TRUE}
current_time_at_dbtimezone=TRUE sid='*'
DB_INDEX_COMPRESSION_INHERITANCE

Default: NONE
Specifies how an index at creation inherits compression attributes
Syntax: DB_INDEX_COMPRESSION_INHERITANCE = {TABLESPACE | TABLE | ALL | NONE}
db_index_compression_inheritance=TABLE sid='*'
DB_SECUREFILE

Default: PREFERRED
Specifies whether to treat LOB files as SecureFiles. Requires the tablespace is created with SEGMENT SPACE MANAGEMENT = AUTO
Range of values: {NEVER | PERMITTED | PREFERRED | ALWAYS | IGNORE}
db_securefile=ALWAYS sid='*'
DB_UNIQUE_NAME

Default: <the value of DB_NAME>
Specifies a globally unique name for the database. Databases with the same DB_NAME within the same DB_DOMAIN. Every database's DB_UNIQUE_NAME must be unique within the enterprise.
Syntax: DB_UNIQUE_NAME = database_unique_name
db_unique_name=orabase20a sid='*'
DB_UNRECOVERABLE_SCN_TRACKING

Default: TRUE
When TRUE turns off control file writes to update fields that track the highest unrecoverable SCN and Timing during a NOLOGGING Direct Path operation.
Syntax: DB_UNRECOVERABLE_SCN_TRACKING = [TRUE | FALSE]
db_unrecoverable_scn_tracking=TRUE sid='*'
DDL_LOCK_TIMEOUT

Default: 0
Specifies a time limit for how long DDL statements will wait in a DML lock queue. The default value of zero indicates a status of NOWAIT. The maximum value of 1,000,000 seconds will result in the DDL statement waiting forever to acquire a DML lock.
Range of values: {0 to 1000000}
ddl_lock_timeout=0 sid='*'
DEFERRED_SEGMENT_CREATION

Default: TRUE
Specifies that, in Enterprise Edition, table and index creation, by default, be deferred until the first the first row is inserted
Range of values: {FALSE | TRUE}
deferred_segment_creation=TRUE sid='*'
DST_UPGRADE_INSERT_CONV

Default: TRUE
Specifies whether internal operators will be allocated on top of TIMESTAMP WITH TIME ZONE (TSTZ) columns of tables which have not been upgraded during the upgrade window of daylight saving time patching for TIMESTAMP WITH TIME ZONE data.
Range of values: {FALSE | TRUE}
dst_upgrade_insert_conv=TRUE sid='*'
FILE_MAPPING

Default: FALSE
Specifies whether file mapping is enabled
Range of values: {FALSE | TRUE}
file_mapping=TRUE sid='*'
FIXED_DATE

Default: No default value defined
Enables you to set a constant date that SYSDATE will always return instead of the current date. To undo a fixed date setting, specify FIXED_DATE=NONE. This parameter is useful primarily for testing. The value can be in the format shown above or in the default Oracle date format, without a time.
Syntax: FIXED_DATE = [YYYY-MM-DD-HH24:MI:SS (or the default date format) | NONE]
fixed_date=NONE sid='*'
HEAT_MAP

Default: OFF
Enables or disables both the Heat Map and Automatic Data Optimization (ADO) features.
Range of values: {OFF | ON}
heat_map=ON sid='*'
INSTANCE_ABORT_DELAY_TIME

Default: 0
Specifies how much time to delay an internal initiated instance abort (in seconds), such as when a fatal process dies or an unrecoverable instance error occurs
Range of values: {0 and greater, no documented maximum value}
instance_abort_delay_time=20
INSTANCE_MODE

Default: READ-WRITE
Specifies whether the instance is read-write, read-only, or read-mostly
Syntax: INSTANCE_MODE = {READ-WRITE | READ-ONLY | READ-MOSTLY}
instance_mode=READ-MOSTLY
JOB_QUEUE_PROCESSES

Default: 4000
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 (J000, ... J999). Replication uses job queues for data refreshes. Advanced queuing uses job queues for message propagation. You can create user job requests through the DBMS_JOB package.
Range of values: {0 to 4000}
job_queue_processes=1000
LOG_CHECKPOINT_INTERVAL

Default: 0
Specifies the frequency of checkpoints in terms of the number of redo log file blocks that can exist between an incremental checkpoint and the last block written to the redo log. This number refers to physical o/s blocks, not database blocks.
Range of values: {0 to 231-1}
log_checkpoint_interval=0
LOG_CHECKPOINT_TIMEOUT

Default: 1800
Specifies (in seconds) the amount of time that has passed since the incremental checkpoint at the position where the last write to the redo log (sometimes called the tail of the log) occurred. This parameter also signifies that no buffer will remain dirty for more than integer seconds.
Range of values: {0 to 231-1}
log_checkpoint_timeout=1800
LOG_CHECKPOINTS_TO_ALERT

Default: FALSE
If TRUE writes checkpoints to the alert file. Doing so is useful for determining whether checkpoints are occurring at the desired frequency and whether exceptions are being generated.
Range of values: {FALSE | TRUE}
max_checkpoints_to_alert=TRUE
LONG_MODULE_ACTION

Default: TRUE
Enables the use of longer lengths for modules and actions
Range of values: {FALSE | TRUE}
long_module_action=TRUE
MAX_IDLE_BLOCKER_TIME

Default: 0
Enables the use of longer lengths for modules and actions
Range of values: {0 to the maximum integer, 0 = unlimited}
long_module_action=TRUE
MAX_STRING_SIZE

Default: STANDARD
Specifies the maximum size of VARCHAR2, NVARCHAR2, and RAW data types in SQL
Range of values: {EXTENDED | STANDARD}
max_string_size=EXTENDED
OFS_THREADS

Default: 4
Sets the maximum number of Oracle file system (OFS) threads that can be started to service Oracle file system requests
Range of values: {2 to 128}
ofs_threads=16
OS_AUTHENT_PREFIX

Default: OPS$
Specifies a prefix that Oracle uses to authenticate users attempting to connect to the server. Oracle concatenates the value of this parameter to the beginning of the user's operating system account name and password. When a connection request is attempted, Oracle compares the prefixed username with Oracle usernames in the database.
os_authent_prefix='' SCOPE=SPFILE
PDC_FILE_SIZE

Default: 2101248
???
pdc_file_size=4202496
PERMIT_92_WRAP_FORMAT

Default: TRUE
When set to TRUE allows Oracle Database release 9.2 wrapped versions of PL/SQL source text to be used in Oracle Database releases 10.2, 11.2, and 12.1. The 18c docs say nothing about the behavior in 12.2 or 18.1.
Range of values: {FALSE | TRUE}
permit_92_wrap_format=TRUE
PRIVATE_TEMP_TABLE_PREFIX

Default: ORA$PTT_
Specifies the prefix that the database uses for private temporary tables.
Range of values: Any string but recommend it be very few bytes to avoid adding to the table name length
private_temp_table_prefix=PT$
PROCESSES

Default: <derived value>
Specifies the maximum number of operating system user processes that can simultaneously connect to Oracle. Its value should allow for all background processes such as locks, job queue processes, and parallel execution processes.

The default values of the SESSIONS and TRANSACTIONS parameters are derived from this parameter. Therefore, if you change the value of PROCESSES, you should evaluate whether to adjust the values of those derived parameters.
Range of values: {6 to operating system dependent}
processes=1250
PROCESSOR_GROUP_NAME

Default: <no value>
The name of the processor group in which the instance should run
Syntax: processor_group_name=string
processor_group_name='uwpgn' sid='*'
REDO_TRANSPORT_USER

Default: <no value>
Specifies the name of the user whose password verifier is used when a remote login password file is used for redo transport authentication. This user must have the SYSOPER privilege and must have the same password in the database that initiates the redo transport session and in the database that is the target of the redo transport session.
redo_transport_user=uwdba
REMOTE_DEPENDENCIES_MODE

Default: TIMESTAMP
Specifies how Oracle should handle dependencies upon remote PL/SQL stored procedures
Range of values: {SIGNATURE | TIMESTAMP}
remote_dependencies_mode=TIMESTAMP
RESOURCE_LIMIT

Default: FALSE
Determines whether resource limits are enforced in database profiles.
Range of values: {FALSE | TRUE}
resource_limit=TRUE
RESUMABLE_TIMEOUT

Default: 0 seconds
Enables or disables resumable statements and specifies resumable timeout at the system level.
Range of values: {0 to 231-1} (in seconds)
resumable_timeout=6000 sid='*'
SERVICE_NAMES

Default: DB_UNIQUE_NAME.DB_DOMAIN if defined, else instance name
Specifies one or more names by which clients can connect to the instance. The instance registers its service names with the listener. When a client requests a service, the listener determines which instances offer the requested service and routes the client to the appropriate instance.
service_name=orabase
SESSIONS

Default: Derived: (1.5 * PROCESSES) + 22
Specifies the maximum number of sessions that can be created in the system. Because every login requires a session, this parameter effectively determines the maximum number of concurrent users in the system. You should always set this parameter explicitly to a value equivalent to your estimate of the maximum number of concurrent users, plus the number of background processes, plus approximately 10% for recursive sessions.
Range of values: {1 to 65536}
sessions=200
SKIP_UNUSABLE_INDEXES

Default: TRUE
Enables or disables the use and reporting of tables with unusable indexes or index partitions. If a SQL statement uses a hint that forces the usage of an unusable index, then this hint takes precedence over initialization parameter settings, including SKIP_UNUSABLE_INDEXES. If the optimizer chooses an unusable index, then an ORA-01502 error will result.
Range of values: {FALSE | TRUE}
skip_unusable_indexes=TRUE sid='*'
SMTP_OUT_SERVER

Default: <no value>
Specifies the SMTP host and port to which UTL_MAIL delivers out-bound E-mail. Multiple servers may be specified, separated by commas.
Syntax: smtp_out_server=server_clause [, server_clause ] ...
smtp_out_server=smtp.drizzle.com sid='*'

Equivalent to:
ALTER SYSTEM SET smtp_out_server = 'smtp.drizzle.com' SCOPE=BOTH;
SPATIAL_VECTOR_ACCELERATION

Default: FALSE
Enables or disables spatial vector acceleration
Range of values: {FALSE | TRUE}
spatial_vector_acceleration=TRUE sid='*'
SQLTUNE_CATEGORY

Default: DEFAULT
Specifies the category name for use by sessions to qualify the lookup of SQL profiles during SQL compilation
sqltune_category=DEFAULT sid='*'
THREADED_EXECUTION

Default: FALSE
Specifies whether to enable the multithreaded Oracle model
Range of values: {FALSE | TRUE}
threaded_execution=FALSE sid='*'
UNIFORM_LOG_TIMESTAMP_FORMAT

Default: TRUE
Specifies that a uniform timestamp format be used in Oracle Database trace (.trc) files and log files (such as the alert log)
Range of values: {FALSE | TRUE}
uniform_log_timestamp_format=TRUE sid='*'
USE_DEDICATED_BROKER

Default: FALSE
Determines how dedicated servers are spawned
Range of values: {FALSE | TRUE}
use_dedicated_broker=TRUE sid='*;'
WORKAREA_SIZE_POLICY

Default: AUTO
Specifies the policy for sizing work areas. This parameter controls the mode in which working areas are tuned.
Range of values: {AUTO | MANUAL}
workarea_size_policy=AUTO sid='*;'
XML_DB_EVENTS

Default: ENABLE
Enables or disables XML Database events.
Range of values: {ENABLE | DISABLE}
xml_db_events=ENABLE sid='*;'
 
Network & Connections Parameters
CIRCUITS

Default: 4294967295
Specifies the total number of virtual circuits that are available for inbound and outbound network sessions. It is one of several parameters that contribute to the total SGA requirements of an instance. Do not specify a value unless you want to limit the number of virtual circuits.
circuits=2048000000 sid='*;'
DISPATCHERS

Default: If SHARED_SERVERS is greater than 0, then DISPATCHERS defaults to '(PROTOCOL=tcp)', causing 1 TCP/IP dispatcher to be created.
Configures dispatcher processes in the shared server architecture. The parsing software supports a name-value syntax to enable the specification of attributes in a position-independent, case-insensitive manner.

Range of values: dispatch_clause::= (PROTOCOL = protocol) | (ADDRESS = address) | (DESCRIPTION = description )
options_clause::=(DISPATCHERS = integer | SESSIONS = integer | CONNECTIONS = integer | TICKS = seconds | POOL = {1 | ON | YES | TRUE | BOTH | ({IN | OUT} = ticks) | 0 | OFF | NO | FALSE | ticks} | MULTIPLEX = {1 | ON | YES | TRUE | 0 | OFF | NO | FALSE | BOTH | IN | OUT} | LISTENER = tnsname | SERVICE = service | INDEX = integer)
dispatchers='(PROTOCOL=TCP) (SERVICE=orabaseXDB)'
dispatchers='(PROTOCOL=TCP)(DISPATCHERS=3)'
LICENSE_MAX_SESSIONS

Default: 0
Specifies the maximum number of concurrent user sessions allowed. When this limit is reached, only users with the RESTRICTED SESSION privilege can connect to the database. Users who are not able to connect receive a warning message indicating that the system has reached maximum capacity.
Range of values: {0 to number of session licenses when licensing is by session}
license_max_sessions=0 sid='*;'
LICENSE_MAX_USERS

Default: 0
Specifies the maximum number of users you can create in the database. When you reach this limit, you cannot create more users. You can, however, increase the limit. Do not enable both concurrent usage (session) licensing and user licensing. Set either LICENSE_MAX_SESSIONS or LICENSE_MAX_USERS to zero.
Range of values: {0 to number of session licenses when licensing named users}
license_max_users=0
LICENSE_SESSIONS_WARNING

Default: 0
Specifies a warning limit on the number of concurrent user sessions. When this limit is reached, additional users can connect, but Oracle writes a message in the alert file for each new connection. Users with RESTRICTED SESSION privilege who connect after the limit is reached receive a warning message stating that the system is nearing its maximum capacity.
Range of values: {0 to number of session licenses when licensing is by session}
license_sessions_warning=0
MAX_DISPATCHERS

Default <no default specified>
Specifies the maximum number of dispatcher processes allowed to be running simultaneously. It can be overridden by the DISPATCHERS parameter and is maintained for backward compatibility with older releases.
Range of values: Complex, read the docs
max_dispatchers=10
MAX_SHARED_SERVERS

Default <no default value>
Specifies the maximum number of shared server processes allowed to be running simultaneously. Setting this parameter enables you to reserve process slots for other processes, such as dedicated servers.
Range of values: Complex, read the docs
max_shared_servers=10
OUTBOUND_DBLINK_PROTOCOLS

Default: ALL
Specifies the network protocols allowed for communicating for outbound database links in the database
Syntax: OUTBOUND_DBLINK_PROTOCOLS = {ALL | NONE | [TCP | [, ] | TCPS | [, ] | IPC]}
outbound_dblink_protocols=TCPS sid='*'
SHARED_SERVER_SESSIONS

Default: <not defined>
Specifies the number of shared server sessions to allow. Setting this parameter enables reserving user sessions for dedicated servers.
shared_server_sessions=60 sid='*'
SHARED_SERVERS

Default: 0
Specifies the number of server processes that you want to create when an instance is started. If system load decreases, then this minimum number of servers is maintained. Therefore, you should take care not to set SHARED_SERVERS too high at system startup.
shared_servers=10
 
NFS and Direct NFS
DNFS_BATCH_SIZE

Default: 4096
Controls the number of asynchronous I/O's that can be queued by an Oracle process when Direct NFS Client is enabled
Range of values: {0 - 4096}
dnfs_batch_size=0 sid='*'
ENABLE_DNFS_DISPATCHER

Default: FALSE
Enables dispatcher support for the Oracle Direct NFS client
Range of values: {FALSE | TRUE}
enable_dnfs_dispatcher=TRUE sid='*'
 
NLS Parameters
NLS_CALENDAR

No Default
Specifies which calendar system Oracle uses
Range of values: {Arabic Hijrah | English Hijrah | Gregorian | Japanese Imperial | Persian | ROC Official (Republic of China) | Thai Buddha}
TBD
NLS_COMP

Default: BINARY
Specifies which calendar system Oracle uses
Range of values: {ANSI | BINARY | LINGUISTIC}
nls_comp=BINARY sid='*'
NLS_CURRENCY

No Default
Specifies the string to use as the local currency symbol for the L number format element. The default value of this parameter is determined by NLS_TERRITORY.
Range of values: Any valid character string, with a maximum of 10 bytes (not including null)
nls_currency=$ sid='*'
NLS_DATE_FORMAT

No Default
Specifies the default date format to use with the TO_CHAR and TO_DATE functions. The default value of this parameter is determined by NLS_TERRITORY.
nls_date_format="MM/DD/YYYY" sid='*'
NLS_DATE_LANGUAGE

No Default
Specifies the language to use for the spelling of day and month names and date abbreviations (a.m., p.m., AD, BC) returned by the TO_DATE and TO_CHAR functions.
nls_date_language=AMERICAN sid='*'
NLS_DUAL_CURRENCY

No Default
Specifies the dual currency symbol (such as "Euro") for the territory. The default is the dual currency symbol defined in the territory of your current language environment.
TBD
NLS_ISO_CURRENCY

No Default
Specifies the string to use as the international currency symbol for the C number format element.
TBD
NLS_LANGUAGE

No Default
Specifies the default language of the database. This language is used for messages, day and month names, symbols for AD, BC, a.m., and p.m., and the default sorting mechanism. This parameter also determines the default values of the parameters NLS_DATE_LANGUAGE and NLS_SORT.
nls_language=AMERICAN
NLS_LENGTH_SEMANTICS

No Default
Enables creationof CHAR and VARCHAR2 columns using either byte or character length semantics. Existing columns are not affected.
nls_length_semantics=BYTE
NLS_NCHAR_CONV_EXCP

Default: FALSE
Determines whether an error is reported when there is data loss during an implicit or explicit character type conversion between NCHAR/NVARCHAR and CHAR/VARCHAR2.The default value results in no error being reported.
Range of values: {FALSE | TRUE}
nls_nchar_conv_excp=TRUE
NLS_NUMERIC_CHARACTERS

No Default
Specifies the characters to use as the group separator and decimal character. It overrides those characters defined implicitly by NLS_TERRITORY. The group separator separates integer groups (that is, thousands, millions, billions, and so on). The decimal separates the integer portion of a number from the decimal portion.
nls_numeric_characters=", "
NLS_SORT

Default: BINARY
Specifies the collating sequence for ORDER BY queries. May have a negative impact on index usage.
Range of values: {BINARY | linguistic_definition}
nls_sort=BINARY
NLS_TERRITORY

No Default
Specifies the name of the territory whose conventions are to be followed for day and week numbering.
nls_territory=AMERICA
NLS_TIMESTAMP_FORMAT

No Default
Defines the default timestamp format to use with the TO_CHAR and TO_TIMESTAMP functions.
nls_timestamp_format='YYYY-MM-DD HH:MI:SS.FF'
NLS_TIMESTAMP_TZ_FORMAT

No Default
Defines the default timestamp with time zone format to use with the TO_CHAR and TO_TIMESTAMP_TZ functions.
nls_timestamp_tz_format='YYYY-MM-DD HH:MI:SS.FF TZH:TZM'
NLS_TIME_FORMAT

Default: HH.MI.SSXFF AM
Not documented in the Database Reference but present in v$parameter
Current NLS time format
nls_time_format='HH:MI:SSXFF AM'
NLS_TIME_TZ_FORMAT

Default: HH.MI.SSXFF AM TZR
Not documented in the Database Reference but present in v$parameter
Current NLS time with time zone format
nls_time_tz_format='HH:MI:SSXFF AM TZR'
 
Optimizer
CREATE_STORED_OUTLINES

Default: <no default value defined>
Enables automatic outline creation for subsequent queries in the same session. These outlines receive a unique system-generated name and are stored in the DEFAULT category. If a particular query already has an outline defined for it in the DEFAULT category, then that outline will remain and a new outline will not be created.
Syntax: CREATE_STORED_OUTLINES = {TRUE | FALSE | CATEGORY_NAME} [NOOVERRIDE]
create_stored_outlines=FALSE
OPTIMIZER_ADAPTIVE_PLANS

Default: TRUE
Enables or disables adaptive optimizer plans
Range of values: {FALSE | TRUE}
optimizer_adaptive_plans=FALSE
OPTIMIZER_ADAPTIVE_REPORTING_ONLY

Defult: FALSE
Performs Adaptive Plan analysis but does not adopt the adaptive plan.
Range of values: {FALSE | TRUE}
optimizer_adaptive_reporting_only=TRUE
OPTIMIZER_ADAPTIVE_STATISTICS

Default: FALSE
Controls adaptive statistics. Some query shapes are too complex to rely on base table statistics alone, so the optimizer augments these statistics with adaptive statistics.
Range of values: {FALSE | TRUE}
optimizer_adaptive_statistics=TRUE
OPTIMIZER_CAPTURE_SQL_PLAN_BASELINES

Defult: FALSE
Enables or disables the automatic recognition of repeatable SQL statements, as well as the generation of SQL plan baselines for such statements.
Range of values: {FALSE | TRUE}
optimizer_capture_sql_plan_baselines=TRUE
OPTIMIZER_DYNAMIC_SAMPLING

Default: 2
Controls the level of dynamic sampling performed by the optimizer.
Range of values: {0 - 11}
optimizer_dynamic_sampling=2
OPTIMIZER_FEATURES_ENABLE

Default: 20.1.0
Umbrella parameter for enabling a series of optimizer features based on an Oracle release number.
optimizer_features_enable=19.1.0
OPTIMIZER_IGNORE_HINTS

Default: FALSE
Enables ignoring embedded hints
Range of values: {FALSE | TRUE}
optimizer_ignore_hints=TRUE
OPTIMIZER_IGNORE_PARALLEL_HINTS

Default: FALSE
Enables ignoring embedded PARALLEL hints
Range of values: {FALSE | TRUE}
optimizer_ignore_parallel_hints=TRUE
OPTIMIZER_INDEX_CACHING

Default: 0
A point that is often overlooked with optimizer_index_caching is that it supposed to apply only for index costs during nested loops (although it does seem to be applied for inlist iterators too).

Consequently it is not really a measure of what fraction of an index is cached, it is a measure of how many rows I select from a driving table that require me to collect the same data from the inner table repeatedly.

For example:
If I select 5 rows from table A and then join to table B, it is possible that I will do a physical read for the index blocks for tableB after reading the first row from table A - but then use the same index blocks for the join to the next 4 rows from table A.

In this case, an optimizer_index_caching value of 80% would be the representative value.
by: Jonathan Lewis / 4 Nov 2004

A relevant metalink note (62286.1) would suggest that Oracle intend the value to be considered for in-list as well as NL.
by: Niall Litchfield

Range of values: {0 - 100}
optimizer_index_caching=20
OPTIMIZER_INDEX_COST_ADJ

Default: 100 (%)
The default instructs the optimizer to use its default index use costing. A lower value makes the cost of index usage lower and a larger value makes the cost of index usage appear more expensive.
Range of values: {1 to 10000}
optimizer_index_cost_adj=90
OPTIMIZER_MODE

Default: ALL_ROWS
The default behavior of the instance's optimization approach
Range of values: {first_rows_[1 | 10 | 100 | 1000] | first_rows | all_rows}
optimizer_mode='FIRST_ROWS_10'
OPTIMIZER_SECURE_VIEW_MERGING

Default: TRUE
Enables the optimizer to use view merging to improve query performance without performing the checks that would otherwise be performed to ensure that view merging does not violate any security intentions of a view's creator.
Range of values: {FALSE | TRUE}
optimizer_secure_view_merging=TRUE
OPTIMIZER_USE_INVISIBLE_INDEXES

Default: FALSE
Enables or disables the use of invisible indexes by the CBO
Range of values: {FALSE | TRUE}
optimizer_use_invisible_indexes=FALSE
OPTIMIZER_USE_PENDING_STATISTICS

Default: FALSE
Specifies if the optimizer can use pending statistics when compiling SQL statements
Range of values: {FALSE | TRUE}
optimizer_use_pending_statistics=FALSE
OPTIMIZER_USE_SQL_PLAN_BASELINES

Default: TRUE
Enables or disables the use of SQL plan baselines stored in SQL Management Base. When enabled, the optimizer looks for a SQL plan baseline for the SQL statement being compiled. If one is found in SQL Management Base, then the optimizer will cost each of the baseline plans and pick one with the lowest cost.
Range of values: {FALSE | TRUE}
optimizer_use_sql_plan_baselines=TRUE
PLSQL_OPTIMIZE_LEVEL

Default: 2
Specifies the optimization level that will be used to compile PL/SQL library units. The higher the setting of this parameter, the more effort the compiler makes to optimize PL/SQL library units.
Range of values: {0-3}
plsql_optimize_level=3 sid='*'
QUERY_REWRITE_ENABLED

Default: TRUE
Allows you to enable or disable query rewriting globally for the database.
Range of values: {FALSE | FORCE | TRUE}
query_rewrite_enabled=TRUE sid='*'
QUERY_REWRITE_INTEGRITY

Default: ENFORCED
Determines the degree to which Oracle must enforce query rewriting. At the safest level, Oracle does not use query rewrite transformations that rely on unenforced relationships.
Range of values: {ENFORCED | STALE_TOLERATED | TRUSTED}
query_rewrite_integrity='TRUSTED' sid='*'
STAR_TRANSFORMATION_ENABLED

Default: FALSE
Determines whether a cost-based query transformation will be applied to star queries.
Range of values: {FALSE | TRUE | TEMP_DISABLE}
star_transformation_enabled=TRUE sid='*'
 
Parallel Execution
INSTANCE_GROUPS

Default <no default value>
Used in conjunction with the PARALLEL_INSTANCE_GROUP parameter, INSTANCE_GROUPS allow restriction of parallel queries to a limited specified instances

Syntax: instance_groups = group_name [, group_name] ...
instance_groups='SYS$USERS,OPS$USERS'
MAX_DATAPUMP_PARALLEL_PER_JOB

Default: 50
Specifies the maximum number of parallel processes allowed per Oracle Data Pump job.

Range of values: {1 to 1024 | AUTO}
data_guard_sync_latency=0 sid='*'
PARALLEL_ADAPTIVE_MULTI_USER

Default: FALSE
Enables an adaptive algorithm designed to improve performance in multi-user environments that use parallel execution.
Range of values: {FALSE | TRUE}
parallel_degree_limit=CPU sid='*'
PARALLEL_DEGREE_LIMIT

Default: CPU
With automatic degree of parallelism, Oracle automatically decides whether or not a statement should execute in parallel and what degree of parallelism the statement should use. The optimizer automatically determines the degree of parallelism for a statement based on the resource requirements of the statement. However, the optimizer will limit the degree of parallelism used to ensure parallel server processes do not flood the system. The limit is enforced by PARALLEL_DEGREE_LIMIT.
Range of values: {CPU | IO | <integer>}
parallel_degree_limit=CPU sid='*'
PARALLEL_DEGREE_POLICY

DEFAULT: MANUAL
When the parameter PARALLEL_DEGREE_POLICY is set to AUTO, Oracle will queue SQL statements that require parallel execution but that cannot obtain the necessary parallel servers processes due to a lack of system resources. Once the necessary resources become available the SQL statement will be dequeued and allowed to execute. The queue is a simple First In First Out queue based on the time a SQL statement was executed.

When the parameter PARALLEL_DEGREE_POLICY is set to AUTO or LIMITED, Oracle will also decide if an object that will be accessed using parallel execution would benefit from being cached in the SGA (buffer cache). The decision to cache an object is based on a well-defined set of heuristics including the size of the object and frequency on which it is accessed. In a RAC environment Oracle will affinitize or map piece of the object into each of the buffer caches on the active instances by fileNumber and extentNumber unless the object is hash partitioned and the number of hash partitions is larger than the number of nodes. By creating this mapping, Oracle will automatically know which buffer cache to access to find different parts or partitions of the object. Using this information Oracle will prevent multiple instances from reading the same information from disk over and over again. If the size of the object is larger than the size of the buffer cache or the size of the buffer cache multiplied by the number of active instances in a RAC cluster than it will be read using direct path reads.
Syntax: PARALLEL_DEGREE_POLICY = {MANUAL | LIMITED | AUTO | ADAPTIVE}
parallel_degree_limit=ADAPTIVE
PARALLEL_EXECUTION_MESSAGE_SIZE

Default: Operating System dependent
The size of messages used for parallel execution (formerly parallel query, PDML, Parallel Recovery, replication).
Range of values: {2148 to 32768}
parallel_execution_message_size=16384
PARALLEL_MAX_SERVERS

Default: See explanation at right
Default is (PARALLEL_THREADS_PER_CPU * CPU_COUNT * concurrent_parallel_users * 5)
Range of values: {0 - 3600}
parallel_max_servers=10
PARALLEL_MIN_DEGREE

Default: 1
Controls the minimum degree of parallelism computed by automatic degree of parallelism
Range of values: PARALLEL_MIN_DEGREE = {n | CPU}
parallel_min_degree=2
PARALLEL_MIN_PERCENT

Default: 0
Specifies the minimum percentage of the requested number of parallel execution processes required for parallel execution
Range of values: {0 - 100}
parallel_min_percent=0
PARALLEL_MIN_SERVERS

Default: See explanation at right
The number of parallel execution processes created when the instance is started
Default is (CPU_COUNT * PARALLEL_THREADS_PER_CPU * 2)
Range of values: {Default value to the value of PARALLEL_MAX_SERVERS}
parallel_min_servers=0
PARALLEL_MIN_TIME_THRESHOLD

Default: AUTO
Specifies the minimum execution time a statement should have before the statement is considered for automatic degree of parallelism
Range of values: {AUTO | integer}
parallel_min_time_threshold=2
PARALLEL_SERVERS_TARGET

Default: MAX_PARALLEL_SERVERS for the CDB
The number of parallel server processes allowed to run parallel statements before statement queuing is used
Range of values: {0 to PARALLEL_MAX_SERVERS}
parallel_servers_target=4
PARALLEL_THREADS_PER_CPU

Default: 1
The number of parallel execution processes or threads that a cpu can handle during parallel execution
Range of values: any non-zero integer.
parallel_threads_per_cpu=4
 
PL/SQL
PLSCOPE_SETTINGS

Default: 'IDENTIFIERS:NONE'
Controls the compile time collection, cross reference, and storage of PL/SQL source code identifier data.
Range of values: {IDENTIFIERS:NONE | IDENTIFIERS:ALL}
plscope_settings=IDENTIFIERS:ALL

equivalent to:
ALTER SYSTEM SET plscope_settings = 'IDENTIFIERS:ALL' scope=spfile;
PLSQL_CCFLAGS

Default: <empty string>
Provides a mechanism that allows PL/SQL programmers to control conditional compilation of each PL/SQL library unit independently.
plsql_ccflags='DEBUG:TRUE'

equivalent to: ALTER SESSION SET plsql_ccflags = 'DEBUG:TRUE';
PLSQL_CODE_TYPE

Default: INTERPRETED
Specifies the compilation mode for PL/SQL library units.
plsql_code_type=NATIVE

equivalent to: ALTER SYSTEM SET plsql_code_type = 'NATIVE' SCOPE=BOTH;
PLSQL_WARNINGS

Default: 'DISABLE:ALL'
Enables or disables feedback on Critical, Informational, and Performance warnings during PL/SQL object compilation.
Syntax: {ENABLE | DISABLE | ERROR}: {ALL | SEVERE | INFORMATIONAL | PERFORMANCE (comma_delimited_integer_list)}
plsql_warnings='DISABLE:ALL' # PL/SQL warnings at init.ora
 
Real Application Clusters
ACTIVE_INSTANCE_COUNT

Dynamic
Number of active instances in the cluster database
Range of values: {1..n}
active_instance_count=3
CLUSTER_DATABASE

Default: FALSE
Specifies whether or not Real Application Clusters is enabled
Range of values: {FALSE | TRUE}
cluster_database=TRUE
CLUSTER_DATABASE_INSTANCES

Default: 1 if stand-alone, number of nodes if RAC
Number of instances to use for sizing cluster database SGA structures
cluster_database_interconnects=2
CLUSTER_INTERCONNECTS

Default: NULL
This parameter can be used to override the default interconnect with a preferred cluster traffic network. This parameter is useful in Data Warehouse systems that have reduced availability requirements and high interconnect bandwidth demands. You can also use CLUSTER_INTERCONNECTS to override the default interconnect chosen by Oracle.

For example, if you are running two instances of Oracle for two databases on the same machine, then you can load balance the interconnect traffic to different physical interconnects. This does not reduce Oracle availability.

Range of values: One or more IP addresses, separated by colons. Provides information about additional cluster interconnects available for use in a RAC environments.
cluster_interconnects=10.2.1.1:10.2.1.2:10.2.1.3:10.2.1.4
GCS_SERVER_PROCESSES

Default: Complex, read the docs
The number of background GCS server processes (LMS0, ... LMS9 and LMSa, ... LMSz) to serve inter-instance traffic among Oracle RAC instances. GCS server processes are only seen in an Oracle RAC environment.
Range of values: {0 - 100}
gcs_server_processes=16
INSTANCE_NAME

Default: The instance's SID
In a Real Application Clusters environment, multiple instances can be associated with a single database service. Clients can override Oracle's connection load balancing by specifying a particular instance by which to connect to the database. INSTANCE_NAME specifies the unique name of the instance.
Warning: Do not use sid='*' as multiple instances cannot have the same name
instance_name=orabasexix
INSTANCE_NUMBER

Default: 0
Lowest available number; derived from instance start up order and INSTANCE_NUMBER value of other instances. If not configured for Real Application Clusters, then 0.

INSTANCE_NUMBER is a Real Application Clusters parameter that can be specified in parallel mode or exclusive mode. It specifies a unique number that maps the instance to one free list group for each database object created with storage parameter FREELIST GROUPS.

The INSTANCE parameter of the ALTER TABLE ... ALLOCATE EXTENT statement assigns an extent to a particular free list group. If you set INSTANCE_NUMBER to the value specified for the INSTANCE parameter, the instance uses that extent for inserts and for updates that expand rows.

The practical maximum value of this parameter is the maximum number of instances specified in the CREATE DATABASE statement. The absolute maximum is operating system-dependent.
Warning: Do not use sid='*' as multiple instances cannot have the same number
instance_number=0
INSTANCE_TYPE

Default: RDBMS
An Oracle RAC parameter that can be specified in parallel mode or exclusive mode. It specifies a unique number that maps the instance to one free list group for each database object created with storage parameter FREELIST GROUPS.
Range of values: {ASM | RDBMS | ASMPROXY}
instance_type=ASM sid='*'
PARALLEL_FORCE_LOCAL

Default: FALSE
On a RAC cluster forces parallel query slaves to stay on the local instance and not parallelize across nodes increasing interconnect traffic.
Range of values: {FALSE | TRUE}
parallel_force_local=TRUE
PARALLEL_INSTANCE_GROUP

Default: Enabled across all currently active servers
PARALLEL_INSTANCE_GROUP = group_name

PARALLEL_INSTANCE_GROUP is a Real Application Clusters parameter that you can specify in parallel mode only. Used in conjunction with the INSTANCE_GROUPS parameter, it lets you restrict parallel query operations to a limited number of instances.

This parameter identifies the parallel instance group Oracle will use for spawning parallel execution processes. Parallel operations will spawn parallel execution processes only on instances that specify a matching group in their INSTANCE_GROUPS parameter.

If the value assigned to PARALLEL_INSTANCE_GROUP is the name of a group that does not exist, then the operation runs serially. No parallelism is used.

Syntax: parallel_instance_group={group_name | service_name}
parallel_instance_group='SYS$USERS'
 
Replication and Distributed Replication
COMMIT_POINT_STRENGTH

Default: 1
Relevant only in distributed database systems. Specifies a value that determines the commit point site in a distributed transaction. The node in the transaction with the highest value for COMMIT_POINT_STRENGTH will be the commit point site.
Range of values: {0 - 255}
commit_point_strength=2 sid='*'
DISTRIBUTED_LOCK_TIMEOUT

Default: 60
Specifies the amount of time (in seconds) for distributed transactions to wait for locked resources.
Range of values: {1 to 231}
distributed_lock_timeout=120 sid='*'
GLOBAL_NAMES

Default: FALSE
Specifies whether a database link is required to have the same name as the database to which it connects.
Range of values: {FALSE | TRUE}
global_names=TRUE sid='*'
ENABLE_GOLDENGATE_REPLICATION

Default: FALSE
Controls capture and apply services provided by the RDBMS for GoldenGate
Range of values: {FALSE | TRUE}
enable_goldengate_replication=TRUE sid='*'
HS_AUTOREGISTER

Default: TRUE
Enables or disables automatic self-registration of Heterogeneous Services (HS) agents. When enabled, information is uploaded into the server's data dictionary to describe a previously unknown agent class or a new agent version.
Range of values: {FALSE | TRUE}
hs_autoregister=FALSE sid='*'
LOCK_NAME_SPACE

Default: <no default value defined>
Specifiesthe namespace that the distributed lock manager (DLM) uses to generate lock names
Syntax: MLOCK_NAME_SPACE=namespace
TBD
MEMOPTIMIZE_POOL_SIZE

Default: 0
Specifies memoptimize pool memory size in the system global area (SGA) used by the Memoptimized Rowstore
Syntax: MEMOPTIMIZE_POOL_SIZE = integer [K | M | G]
memoptimize_pool_size=1G sid='*'
MEMOPTIMIZE_WRITE_AREA_SIZE

Default: 0
???
memoptimize_pool_size=???
OPEN_LINKS

Default: 4
Specifies the maximum number of concurrent open connections to remote databases in one session. These connections include database links, as well as external procedures and cartridges, each of which uses a separate process.
Range of values: {0 - 32768}
open_links=10 sid='*'
OPEN_LINKS_PER_INSTANCE

Default: 4
Specifies the maximum number of migratable open connections globally for each database instance. XA transactions use migratable open connections so that the connections are cached after a transaction is committed. Another transaction can use the connection, provided the user who created the connection is the same as the user who owns the transaction.
Range of values: {0 - 4294967295)
open_links_per_instance=5 sid='*'
REPLICATION_DEPENDENCY_TRACKING

Default: TRUE
Enables or disables dependency tracking for read/write operations to the database. Dependency tracking is essential for propagating changes in a replicated environment in parallel.
Range of values: {FALSE | TRUE}
replication_dependency_tracking=FALSE sid='*'
 
Resource Manager
CPU_COUNT

Default: 0
Specifies the maximum number of CPUs available to Oracle.
Range of values: {0 to unlimited}
cpu_count=16 sid='*'
CPU_MIN_COUNT

Default: value of CPU_COUNT parameter
Minimum number of CPUs required.
Range of values: {0,1 to unlimited}
cpu_count=12 sid='*'
RESOURCE_MANAGER_CPU_ALLOCATION

Default: Number of logical cores reported by the O/S
Specifies the number of CPU cores that the Resource Manager should use.
Range of values: {0 to operating system specific}
resource_manage_goldengate=TRUE sid='*'
RESOURCE_MANAGER_PLAN

Default <no value>
Specifies the top-level resource plan to use for an instance. The resource manager will load this top-level plan along with all its descendants (subplans, directives, and consumer groups). If you do not specify this parameter, the resource manager is off by default.
resource_manager_plan='SCHEDULER[0x4D1F]:DEFAULT_MAINTENANCE_PLAN' sid='*'
RESOURCE_MANAGE_GOLDENGATE

Default: FALSE
Specifies whether the GoldenGate apply processes in the database are resource managed
Range of values: {FALSE | TRUE}
resource_manage_goldengate=TRUE sid='*'
 
Result Cache
CLIENT_RESULT_CACHE_LAG

Default: 3000
Specifies the maximum time (in milliseconds) since the last round trip to the server, before which the OCI client query execute makes a round trip to get any database changes related to the queries cached on the client.
client_result_cache_lag=3000 sid='*'
CLIENT_RESULT_CACHE_SIZE

Default: 0
Specifies the maximum size of the client per-process result set cache (in bytes). All OCI client processes inherit this maximum size. Setting a nonzero value enables the client query cache feature. This can be overridden by the client configuration parameter OCI_RESULT_CACHE_MAX_SIZE.
Range of values: {0 to operating system dependent in K|M|G}
client_result_cache_size=0 sid='*'
RESULT_CACHE_MAX_RESULT

Default: 5%
Specifies the percentage of RESULT_CACHE_MAX_SIZE that any single result can use.
Range of values: {0 to 100}
result_cache_max_result=7 sid='*'
RESULT_CACHE_MAX_SIZE

Default: Derived
Specifies the maximum amount of SGA memory (in bytes) that can be used by the Result Cache. Values of this parameter greater than 0 are rounded up to the next multiple of 32 KB. If the value of this parameter is 0, then the feature is disabled.
Range of values: {0 to operating system dependent}
Syntax: result_cache_max_size=integer {K | M | G}
result_cache_max_size=6291456 sid='*'
RESULT_CACHE_MAX_TEMP_SIZE

Default: Derived but like 10X MAX_SIZE
???
result_cache_max_temp_size=62914560
RESULT_CACHE_MODE

Default: MANUAL
Specifies when a ResultCache operator is spliced into a query's execution plan.
Range of values: {MANUAL | FORCE | MANUAL_TEMP | FORCE_TEMP}
result_cache_mode=MANUAL sid='*'
RESULT_CACHE_REMOTE_EXPIRATION

Default: 0
Specifies the number of minutes that a result using a remote object is allowed to remain valid. Setting this parameter to 0 implies that results using remote objects should not be cached. Setting this parameter to a nonzero value can produce stale answers (for example, if the remote table used by a result is modified at the remote database).
Range of values: {0 to operating system dependent value}
result_cache_remote_expiration=0 sid='*'
 
Security
ALLOW_WEAK_CRYPTO

Default: TRUE
???
Range of Values: {FALSE | TRUE}
ALLOW_WEAK_CRYPTO=FALSE sid='*'
DBFIPS_140

Default: FALSE
???
Range of Values: {FALSE | TRUE}
DBFIPS_140=TRUE sid='*'
DB_LOST_WRITE_PROTECT

Default: NONE
Enables or disables lost write detection. A data block lost write occurs when an I/O subsystem acknowledges the completion of the block write, while in fact the write did not occur in the persistent storage.

When the parameter is set to TYPICAL on the primary database, the instance logs buffer cache reads for read-write tablespaces in the redo log, which is necessary for detection of lost writes.

When the parameter is set to FULL on the primary database, the instance logs reads for read-only tablespaces as well as read-write tablespaces.

When the parameter is set to TYPICAL or FULL on the standby database or on the primary database during media recovery, the instance performs lost write detection.

When the parameter is set to NONE on either the primary database or the standby database, no lost write detection functionality is enabled.
Range of values: {NONE | TYPICAL | FULL}
db_lost_write_protect=FULL sid='*'
DB_ULTRA_SAFE

Default: OFF
Sets the default values for other parameters that control protection levels.
Range of values: {OFF | DATA_ONLY | DATA_AND_INDEX}
db_ultra_safe=OFF sid='*'
ENCRYPT_NEW_TABLESPACES

Default: CLOUD_ONLY
Specifies whether to encrypt newly created user tablespaces
Range of values: ENCRYPT_NEW_TABLESPACES = {CLOUD_ONLY | ALWAYS | DDL}
encrypt_new_tablespaces=DDL sid='*'
EXTERNAL_KEYSTORE_CREDENTIAL_LOCATION

Default: <no_value>
Specifies the location of the secure external keystore
Syntax: external_keystore_credential_location=file-location
external_keystore_credential_location=/u01/app/oracle/admin/ORCL/db_wallet/ sid='*'
LOB_SIGNATURE_ENABLE

Default: FALSE
Enables or disables the LOB locator signature feature.

You can secure your LOBs by enabling the LOB locator signature feature. A LOB locator is a pointer to the location of a large object (LOB) value. If the LOB_SIGNATURE_ENABLED initialization parameter is set to true, then when you create a LOB, Oracle Database automatically assigns a signature to the LOB locator. When Oracle Database receives a request from a client, it uses the signature to determine if any tampering with the LOB locator has occurred. When this parameter is set to true, you also have the option of further securing your LOBs by encrypting your LOB locator signature keys.

Range of values: {FALSE | TRUE}
data_guard_sync_latency=0 sid='*'
MAX_IDLE_TIME

Default: 0
Specifies the maximum number of minutes that a session can be idle after which the session is automatically terminated
Range of values: {0 to the maximum integer, 0 = unlimited}
max_idle_time=30 sid='*'
OS_ROLES

Default: FALSE
Determines whether Oracle or the operating system identifies and manages the roles of each username.
Range of values: {FALSE | TRUE}
os_rules=FALSE sid='*'
REMOTE_LOGIN_PASSWORDFILE

Default: EXCLUSIVE
Specifies whether Oracle checks for a password file.
Range of values: {EXCLUSIVE | NONE | SHARED}
remote_login_passwordfile='EXCLUSIVE' sid='*'
REMOTE_OS_ROLES

Default: FALSE
Specifies whether operating system roles are allowed for remote clients. The default value, false, causes Oracle to identify and manage roles for remote clients.
Range of values: {FALSE | TRUE}
remote_os_rules=FALSE id='*'
SEC_CASE_SENSITIVE_LOGON

Default: TRUE
Case sensitive password enabled for logon
Range of values: {FALSE | TRUE}
sec_case_sensitive_logon=TRUE sid='*'
SEC_MAX_FAILED_LOGIN_ATTEMPTS

Default: 3
Specifies the number of authentication attempts that can be made by a client on a connection to the server process. After the specified number of failure attempts, the connection will be automatically dropped by the server process.
Range of values: {1 or greater}
sec_max_failed_login_attempts=2 sid='*'
SEC_PROTOCOL_ERROR_FURTHER_ACTION

Default: DROP,3
Specifies the further execution of a server process when receiving bad packets from a possibly malicious client.
Range of values: {CONTINUE | DELAY, <integer> | DROP, <integer>}
ALTER SYSTEM SET sec_protocol_error_further_action=DELAY,3 SID='*' SCOPE=SPFILE;
SEC_PROTOCOL_ERROR_TRACE_ACTION

Default: TRACE
Specifies the action that the database should take when bad packets are received from a possibly malicious client
Range of values: {ALERT | LOG | NONE | TRACE}
sec_protocol_eror_trace_action=ALERT
SEC_RETURN_SERVER_RELEASE_BANNER

Default: FALSE
Specifies whether or not the server returns complete database software information to clients
Range of values: {FALSE | TRUE}
sec_return_server_release_banner=FALSE
SQL92_SECURITY

Default: TRUE
The SQL standard specifies that security administrators should be able to require that users have SELECT privilege on a table when executing an UPDATE or DELETE statement that references table column values in a WHERE or SET clause. SQL92_SECURITY specifies whether users must have been granted the SELECT object privilege in order to execute such UPDATE or DELETE statements.
Range of values: {FALSE | TRUE}
sql92_security=TRUE
SSL_WALLET

Default: <no value>
Not documented in the Database Reference but present in v$parameter
TBD
TABLESPACE_ENCRYPTION_DEFAULT_
ALGORITHM

Default: AES128
Enables control and monitoring of users that can perform potentially unsafe database diagnostic operations. Up until 20c this was an undocumented underscore parameter.
Range of values: {AES128 | AES192 | AES256 | ARIA128 | ARIA192 | ARIA256 | GOST256 | SEED128 | 3DES168}
tablespace_encryption_default_algorithm='AES256'
TDE_CONFIGURATION

Default: <no default value>
Specified on a per-PDB basis for Transparent Data Encryption (TDE). Before Oracle Database 18c, each PDB stored their separate encryption keys in the CDB’s keystore (united mode). Starting with Oracle Database 18c, a PDB can optionally store its encryption keys in a separate keystore (isolation mode), thus allowing protection by a separate keystore password. The WALLET_ROOT initialization parameter must be set for TDE_CONFIGURATION to take effect.
Range of values: {FILE | OKV | HSM | FILE|OKV | FILE|HSM | OKV|FILE | HSM|FILE}
tde_configuration=OKV
WALLET_ROOT

Default: <no default value>
Specifies the path to the root of a directory tree containing a subdirectory for each pluggable database (PDB), under which a directory structure similar to the Oracle ASM wallet storage directory structure is used to store the various wallets associated with the PDB.
Range of values: wallet-root-directory-path
wallet_root=wallet-root/tde_seps/cwallet.sso
 
Sharding
MULTISHARD_QUERY_DATA_CONSISTENCY

Default: Strong
Enables specifying a data consistency setting for multi-shard queries
Syntax: MULTISHARD_QUERY_DATA_CONSISTENCY = {STRONG | SHARD_LOCAL | DELAYED_STANDBY_ALLOWED}
TBD
MULTISHARD_QUERY_PARTIAL_RESULTS

Default: not allowed
Not documented in the Database Reference but present in v$parameter
Enables partial results for multi-shard queries.
Range of values: {NOT ALLOOWED | other valid values not known}
TBD
SHRD_DUPL_TABLE_REFRESH_RATE

Default: 60
Specifies the duplicated table refresh rate (in seconds)
Range of values: {20 to 4294967295} (UB4MAXVAL)
shrd_dupl_table_refresh_rate=120
 
Transactions
COMMIT_LOGGING

Default: IMMEDIATE
Controls how redo is batched by Log Writer. If COMMIT_LOGGING is altered after setting COMMIT_WAIT to FORCE_WAIT, then the FORCE_WAIT option is no longer valid.
Range of values: {IMMEDIATE | BATCH}
commit_logging=BATCH
COMMIT_WAIT

Default: NOWAIT
An advanced parameter used to control when commit redo is flushed to the redo logs.
Range of values: {NOWAIT | WAIT | FORCE_WAIT}
commit_wait=NOWAIT
COMMIT_WRITE

Default: Complex: Read the docs
An advanced parameter used to control when commit redo is flushed to the redo logs.
Range of values: {BATCH | IMMEDIATE},{NOWAIT | WAIT}
commit_write='BATCH,WAIT'
DML_LOCKS

Default: 4 * number of transactions
Default value Derived: 4 * TRANSACTIONS. Specifies the maximum number of DML locks—one for each table modified in a transaction. The value should equal the grand total of locks on tables currently referenced by all users. For example, if three users are modifying data in one table, then three entries would be required. If three users are modifying data in two tables, then six entries would be required.
Range of values: 20 to unlimited; 0 disables enqueues
dml_locks=748
FAST_START_PARALLEL_ROLLBACK

Default: LOW
Determines the maximum number of processes that can exist for performing parallel rollback. This parameter is useful on systems in which some or all of the transactions are long running
Range of values: {HI | LOW | FALSE}
fast_start_parallel_rollback=HIGH
GLOBAL_TXN_PROCESSES

Default: 1
Specifies the initial number of GTXn background processes (GTX0, ... GTX9 and GTXa, ... GTXj) per instance to support global (XA) transactions in an Oracle RAC environment.
Range of values: {0 to 20}
global_txn_processes=3
TRANSACTIONS

Default: Derived: (1.1 * SESSIONS)
Specifies the maximum number of concurrent transactions. Greater values increase the size of the SGA and can increase the number of rollback segments allocated. The default value is greater than SESSIONS (and, in turn, PROCESSES) to allow for recursive transactions.
Range of values: {4 to 232}
transactions=187
TRANSACTIONS_PER_ROLLBACK_SEGMENT

Default 5
Specifies the number of concurrent transactions you expect each rollback segment to have to handle. The minimum number of rollback segments acquired at startup is TRANSACTIONS divided by the value for this parameter.
Range of values: {1 to operating system dependent}
transactions_per_rollback_segment=8
 
Undo and Rollback
ROLLBACK_SEGMENTS

Default: No specified as UNDO is used
Allocates one or more rollback segments by name to this instance. If you set this parameter, the instance acquires all of the rollback segments named in this parameter, even if the number of rollback segments exceeds the minimum number required by the instance (calculated as TRANSACTIONS / TRANSACTIONS_PER_ROLLBACK_SEGMENT).
Range of values: {Any rollback segment names listed in DBA_ROLLBACK_SEGS except SYSTEM}
TBD
TEMP_UNDO_ENABLED

Default: FALSE
Determines whether transactions within a particular session can have a temporary undo log. Read this information from Tim Hall to learn more [Click Here]
Range of values: {FALSE | TRUE}
temp_undo_enabled=TRUE
UNDO_MANAGEMENT

Default: AUTO
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.
Range of values: {MANUAL | AUTO}
undo_management=AUTO
UNDO_RETENTION

Default: 900
Specifies (in seconds) the low threshold value of undo retention. For AUTOEXTEND undo tablespaces, the system retains undo for at least the time specified in this parameter, and automatically tunes the undo retention period to satisfy the undo requirements of the queries. For fixed- size undo tablespaces, the system automatically tunes for the maximum possible undo retention period, based on undo tablespace size and usage history, and ignores UNDO_RETENTION unless retention guarantee is enabled.
Range of values: {0 to 231-1}
undo_retention=1440
UNDO_TABLESPACE

Default: UNDOTBS1
Name of the undo tablespace to be used during startup.
Syntax: undo_tablespace=<undo_tablespace_name>
undo_tablespace='UNDOTBS1' sid='*'

Related Topics
Built-in Functions
Built-in Packages
Database Security
Alter System
DBMS_WORKLOAD_REPOSITORY
Init.ora & SPFILE
Synonyms
Underscore Parameters
What's New In 21c
What's New In 23c

Morgan's Library Page Footer
This site is maintained by Dan Morgan. Last Updated: This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2023 Daniel A. Morgan All Rights Reserved
  DBSecWorx