title: Decreasing the storage size of a production AWS RDS MySQL instance
body: <p>I have an MySQL RDS instance that I use in a production environment (multi AZ). This instance is defined as "Provisioned IOPS" with 1,000GB of storage and 6,000 provisioned IOPS.
  I would like to decrease both the storage and the amount of provisioned IOPS I'm paying for, as I no longer need them. I'm facing the following issues:</p>
  
  <ol>
  <li>AWS does not allow decreasing the storage size of an RDS instance</li>
  <li>Any change to the storage engine (storage size and/or type) takes forever on a DB that big (in the past I measured around 24-36 hours)</li>
  </ol>
  
  <p>I already tried the following solutions:</p>
  
  <ol>
  <li>Dump the current DB, create a new (smaller) instance and load the dumped data into it. This is bad because the dump/load process takes a very long time for such a big DB and I cannot allow this to happen on a production database.</li>
  <li>Create a read replica to the main db, change its storage type and promote it to be the master. This fails because I can't even decrease the size of the replica.</li>
  </ol>
  
  <p>Is there any other way of making this happen? I really want to avoid paying for an under-utilized DB instance.</p>