2.4 Changing Parameter Values in a Parameter File

You can change the value of a parameter in a parameter file in several ways.

  • By editing an initialization parameter file

    In most cases, the new value takes effect the next time you start an instance of the database.

  • By issuing an ALTER SYSTEM SET ... SCOPE=SPFILE statement to update a server parameter file

  • By issuing an ALTER SYSTEM RESET statement to clear an initialization parameter value.

    See Also:

    Oracle Database Administrator’s Guide for more information about using the ALTER SYSTEM RESET statement to clear initialization parameter values

2.4.1 Parameters by Functional Category

This section lists initialization parameters by their functional category.

2.4.2 Modifiable Parameters

You can modify some initialization parameters using the ALTER SESSION or ALTER SYSTEM statements while an instance is running.

Use the following syntax to modify initialization parameters:

ALTER SESSION SET parameter_name = value
ALTER SYSTEM SET parameter_name = value [DEFERRED]

Whenever a parameter is modified using the ALTER SYSTEM statement, the Oracle Database records the statement that modifies the parameter in the alert log.

The ALTER SESSION statement changes the value of the specified parameter for the duration of the session that invokes the statement. The value of the parameter does not change for other sessions in the instance. The value of the following initialization parameters can be changed with ALTER SESSION:

The ALTER SYSTEM statement without the DEFERRED keyword modifies the global value of the parameter for all sessions in the instance, for the duration of the instance (until the database is shut down). The value of the following initialization parameters can be changed with ALTER SYSTEM:

The ALTER SYSTEM ... DEFERRED statement does not modify the global value of the parameter for existing sessions, but the value will be modified for future sessions that connect to the database. The value of the following initialization parameters can be changed with ALTER SYSTEM ... DEFERRED:

2.4.3 Displaying Current Parameter Values

You can use the SQL*Plus SHOW PARAMETERS statement to see the current settings for initialization parameters.

For example:

SQL> SHOW PARAMETERS

This statement displays all parameters in alphabetical order, along with their current values.

Enter the following text string to display all parameters having BLOCK in their names:

SQL> SHOW PARAMETERS BLOCK

You can use the SPOOL command to write the output to a file.

2.4.4 Parameters You Should Not Specify in the Parameter File

You should not specify these types of parameters in your parameter files:

  • Parameters that you never alter unless instructed to do so by Oracle to resolve a problem

  • Derived parameters, which normally do not need altering because their values are calculated automatically by the Oracle database server

2.4.5 When Parameters Are Set Incorrectly

When a parameter is set incorrectly, the effect can be different for different parameters, or based on how low or high the parameter is set.

Some parameters have a minimum setting below which an Oracle instance will not start. For other parameters, setting the value too low or too high may cause Oracle to perform badly, but it will still run. Also, Oracle may convert some values outside the acceptable range to usable levels.

If a parameter value is too low or too high, or you have reached the maximum for some resource, then Oracle returns an error. Frequently, you can wait a short while and retry the operation when the system is not as busy. If a message occurs repeatedly, then you should shut down the instance, adjust the relevant parameter, and restart the instance.