Why is my Amazon RDS DB instance in the storage-optimization state for a long time?

3 minute read
0

I updated the storage size of my Amazon Relational Database (Amazon RDS) DB instance. The process takes a long time, and the instance is in the storage-optimization state.

Resolution

When you modify the storage size of your Amazon RDS DB instance, the status of the instance changes to storage optimization. This process modifies your DB instance to change the storage size or type. The storage optimization process is performed by RDS automation. RDS automation confirms that the data is evenly distributed to the Amazon Elastic Block Store (Amazon EBS) volumes after storage modification.

In most cases, scaled storage doesn't cause an outage or performance degradation of the DB instance. However, this operation might take several hours. You can't make further storage modifications for either 6 hours or until storage optimization has completed on the instance, whatever is longer. You can perform any other instance modifications, such as instance size scaling or rebooting. After you scale the instance, you can see the storage optimization progress in the AWS Management Console or by using the describe-db-instances AWS CLI command. If you receive errors when running AWS CLI commands, make sure to use the most recent version of the AWS CLI.

Typically, the storage optimization completes in a few hours, but the process can sometimes take more than 24 hours. While the DB instance is in the storage-optimization state, the instance is still operational. Your application availability isn't affected. You don't have to wait for the DB instance to be in the available state to run your applications.
Note: There's no way to speed up this process. You must wait for the optimization process to complete. The process takes longer for larger storage size increases and storage usage. Because this is an automated process, there's no fixed way to determine how long it takes to complete storage optimization on your RDS DB instance.

For a cluster volume, Amazon Aurora uses a custom storage solution for data and Amazon EBS for local storage. When you scale DB instances, for example from db.r5.2xlarge to db.r5.4xlarge, storage-optimization events appear in the Status column. For more information, see Introducing the Aurora storage engine.

Note: Any type of storage modification results in the DB instance moving to the storage-optimization state. However, if you modify the storage, then the instance might restart. This is a requirement in specific cases, such as a change to the storage type between SSD and magnetic. For more information, see Settings for DB instances.

To monitor the amount of free storage for your DB instance, it's a best practice to create an Amazon CloudWatch alarm.

Related information

Managing an Amazon RDS DB instance

AWS OFFICIAL
AWS OFFICIALUpdated a year ago
1 Comment

Two things to note:

  1. storage optimization does not necessary occur during maintenance window.
  2. AWS Backup job will fail if the instance state is in storage-optimization state.
Reza
replied a year ago