How can I fix an Amazon RDS DB instance that is stuck in the incompatible-parameters status?

Last updated: 2020-09-08

My Amazon Relational Database Service (Amazon RDS) instance is stuck in an incompatible-parameters state. I can't connect to the DB instance or modify it. All I can do is delete it or reboot. How can I fix this?

Short description

When an RDS DB instance is in the incompatible-parameters state, at least one of the parameters in the associated group is set with a value that's not compatible with the current engine version or DB instance class.

This can be caused by:

  • A DB instance that's scaled to use an instance type that has less memory available than the previous one. At least one of the memory settings in the associated parameter group exceeds the memory size available for the current DB instance.
  • A database engine that's upgraded to a different version. The engine is no longer compatible with one or more parameter settings of the current custom parameter group.

Configurations can fail if you attempt to associate a different parameter group, scale the DB instance type, change the engine version, or modify the DB instance configuration. To accept a new configuration, DB instances must be in the available state. If the DB instance is in an incompatible-parameters state, then you can only reboot or delete it.

For information about how to determine which values are incompatible, see How do I identify which Amazon RDS DB parameters are in custom parameter groups and which are in default parameter groups?

Resolution

Note: If you receive errors when running AWS Command Line Interface (AWS CLI) commands, make sure that you’re using the most recent AWS CLI version.

To resolve this issue, change the value of each incompatible parameter to a compatible value using one of the following options:

  • Reset all the parameters in the parameter group to the default value.
  • Reset the values of the parameters that are incompatible.

Note: All the DB instances associated with the incompatible parameter group are affected by these value changes. To back up the current parameter group settings, copy the parameter group before resetting the parameters.

To identify the root cause of the issue, you can copy the incompatible parameter group and then compare the differences between custom parameter values and default values.

You can use AWS CloudTrail to check changes that have occurred to your custom parameter group. Filter the Event name for ModifyDBParameterGroup or ModifyDBClusterParameterGroup within the last 90 days.

To create a copy of the parameter group using the Amazon RDS console

  1. Open the Amazon RDS console, and then choose Parameter groups from the navigation pane.
  2. Select the incompatible parameter group, and then choose Parameter group actions.
  3. Choose Copy.

To reset all the parameters in the parameter group to default values using the Amazon RDS console

  1. Open the Amazon RDS console, and then choose Parameter groups from the navigation pane.
  2. Choose the parameter group that you want to reset.
  3. Choose Parameter group actions, and then choose Reset.
  4. Choose Reset.

To reset parameter values using the Amazon RDS console

To avoid resetting all the parameter values of the incompatible parameter group, you can choose which parameters to change. You can do this by editing the incompatible parameter group from the Amazon RDS console.

  1. Open the Amazon RDS console, and then choose Parameter groups from the navigation pane.
  2. Select the incompatible parameter groups (or to reset all parameters, select all the parameters).
  3. Choose Parameter group actions, and then choose Edit.
  4. Enter the valid parameter values, and then choose Save Changes.
  5. Reboot the DB instance without failover to apply new settings.
    Note: The Amazon RDS console allows you to change parameters to any related allowed values. The AWS Command Line Interface (AWS CLI) allows you to reset target parameters to their default values. Changes to parameter values using the AWS CLI to a value other than the default parameter value have no effect.

For more information about Oracle parameters that are incompatible with Amazon RDS, see Oracle 12c with Amazon RDS and Using huge pages with an Oracle DB instance.