Initialization Parameter Use in Oracle RAC
By default, most parameters are set to a default value and this value is the same across all instances.
However, many initialization parameters can also have different values on different instances as described in Initialization Parameters Specific to Oracle RAC. Other parameters must either be unique or identical as described in the following sections:
Related Topics
Initialization Parameters Specific to Oracle RAC
The following table summarizes the initialization parameters used specifically for Oracle RAC databases.
| Parameter | Description |
|---|---|
ACTIVE_INSTANCE_COUNT | This initialization parameter was deprecated in Oracle RAC 11g release 2 (11.2). Instead, use a service with one preferred and one available instance. |
ASM_PREFERRED_READ_FAILURE_GROUPS | Specifies a set of disks to be the preferred disks from which to read mirror data copies. The values you set for this parameter are instance specific and need not be the same on all instances. |
CLUSTER_DATABASE | Enables a database to be started in cluster mode. Set this parameter to TRUE. |
CLUSTER_DATABASE_INSTANCES | Oracle RAC uses this parameter to allocate adequate memory resources. It must be set to the same value on all instances. Note:The policy-managed database deployment option is desupported in Oracle AI Database 26ai. You can set this parameter to a value that is greater than the current number of instances, if you are planning to add instances. |
CLUSTER_INTERCONNECTS | Specifies an alternative cluster interconnect for the private network when there are multiple interconnects. Notes:
|
DB_NAME | If you set a value for DB_NAME in instance-specific parameter files, the setting must be identical for all instances. |
DISPATCHERS | Set the Oracle recommends that you configure at least the |
GCS_SERVER_PROCESSES | This static parameter specifies the initial number of server processes for an Oracle RAC instance's Global Cache Service (GCS). The GCS processes manage the routing of inter-instance traffic among Oracle RAC instances. The default number of GCS server processes is calculated based on system resources with a minimum setting of 2. For systems with one CPU, there is one GCS server process. For systems with two to eight CPUs, there are two GCS server processes. For systems with more than eight CPUs, the number of GCS server processes equals the number of CPUs divided by 4, dropping any fractions. For example, if you have 10 CPUs, then 10 divided by 4 means that your system has 2 GCS processes. You can set this parameter to different values on different instances. |
INSTANCE_NAME | Specifies the unique name of an instance. Clients can use this name to force their session to be connected to a specific instance in the cluster. The format of the Note: In Grid Plug and Play environments, the |
RESULT_CACHE_MAX_SIZE | In a clustered database, you can either set
If you do not set the The result cache fetch functionality has been enhanced in Oracle AI Database. Before fetching a cached result from a remote instance, the database uses heuristics to determine if it is more cost efficient to recompute the result on the local instance. You can monitor the use of this functionality by querying the |
SERVICE_NAMES | When you use services, Oracle recommends that you do not set a value for the The service features described in Workload Management with Dynamic Database Services are not directly related to the features that Oracle provides when you set Note: Oracle recommends that client connections use services rather than instance names. Entries in the |
SPFILE | When you use an SPFILE, all Oracle RAC database instances must use the SPFILE and the file must be on shared storage. |
THREAD | Specifies the number of the redo threads to be used by an instance. You can specify any available redo thread number if that thread number is enabled and is not used. If specified, this parameter must have unique values on all instances. The best practice is to use the INSTANCE_NAME parameter to specify redo log groups. |
Related Topics
Parameters That Must Have Identical Settings on All Instances
Certain parameters that are critical at database creation or that affect certain database operations must have the same value for every instance in an Oracle RAC database.
Specify these initialization parameter values in the SPFILE or in the individual PFILEs for each instance. The following list contains the parameters that must be identical on every instance:
COMPATIBLECLUSTER_DATABASECONTROL_FILESDB_BLOCK_SIZEDB_DOMAINDB_FILESDB_NAMEDB_RECOVERY_FILE_DESTDB_RECOVERY_FILE_DEST_SIZEDB_UNIQUE_NAMEINSTANCE_TYPE(RDBMS or ASM)PARALLEL_EXECUTION_MESSAGE_SIZEREMOTE_LOGIN_PASSWORDFILEUNDO_MANAGEMENT
The following parameters must be identical on every instance only if the parameter value is set to zero:
DML_LOCKSRESULT_CACHE_MAX_SIZE
Parameters That Should Have Identical Settings on All Instances
Oracle recommends that the parameters listed here have identical settings on all instances.
Oracle recommends that you set the values for the parameters in the following table to the same value on all instances. Although you can have different settings for these parameters on different instances, setting each parameter to the same value on all instances simplifies administration.
Table: Parameters That Should Have Identical Settings on All Instances
| Parameter | Description |
|---|---|
ARCHIVE_LAG_TARGET | Different values for instances in your Oracle RAC database are likely to increase overhead because of additional automatic synchronization performed by the database processing. When using either Oracle GoldenGate downstream capture or Oracle GoldenGate integrated capture mode in a downstream capture configuration with your Oracle RAC database, the value must be greater than zero. |
CLUSTER_DATABASE_INSTANCES | While it is preferable for this parameter to have identical settings across all Oracle RAC database instances, it is not required. |
LICENSE_MAX_USERS | Because this parameter determines a database-wide limit on the number of users defined in the database, it is useful to have the same value on all instances of your database so you can see the current value no matter which instance you are using. Setting different values may cause Oracle AI Database to generate additional warning messages during instance startup, or cause commands related to database user management to fail on some instances. |
LOG_ARCHIVE_FORMAT | If you do not use the same value for all your instances, then you unnecessarily complicate media recovery. The recovering instance expects the required archive log file names to have the format defined by its own value of Databases that support Oracle Data Guard, either to send or receive archived redo log files, must use the same value of |
SPFILE | If this parameter does not identify the same file to all instances, then each instance may behave differently and unpredictably in fail over, load-balancing, and during normal operations. Additionally, a change you make to the SPFILE with an If the SPFILE values are different in instances for which the values were set by the server, then you should restart the instances that are not using the default SPFILE. |
TRACE_ENABLED | If you want diagnostic trace information to be always available for your Oracle RAC database, you must set TRACE_ENABLED to TRUE on all of your database instances. If you trace on only some of your instances, then diagnostic information might not be available when required should the only accessible instances be those with TRACE_ENABLED set to FALSE. |
UNDO_RETENTION | By setting different values for UNDO_RETENTION in each instance, you are likely to reduce scalability and encounter unpredictable behavior following a failover. Therefore, you should carefully consider whether there are any benefits before you assign different values for this parameter to the instances in your Oracle RAC database. |