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

5 minute read
0

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

An Amazon RDS DB instance in the incompatible-parameters state means that 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

Amazon RDS doesn't directly identify and provide the incompatible parameter in the parameter group attached to Amazon RDS that causes the incompatible-parameter state. This state is a Terminal state that requires you to fix the incompatible parameters. 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, copy the incompatible parameter group and then compare the differences between custom parameter values and default values. For example, max_connections is a system-default value. If you compare a custom parameter group that has a custom value set for max_connections parameter to a default parameter group, then you see the default value and custom value for this parameter to compare the difference.

Note: When you compare custom parameter group with a default parameter group, you see only the default values of the system-default parameters under the Default Parameter group. The default values of the engine-default parameters aren't displayed, because engine-default parameter values are specific to the engine version and configuration settings of your RDS.

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 Administering your Oracle DB instance and Using HugePages for an Oracle DB instance.


Related information

Viewing Amazon RDS DB instance status

How do I resolve issues with an Amazon RDS database that is in an incompatible-network state?