降级 AWS RDS 实例存储类型和备份保留期会导致停机和数据丢失吗?

Will downgrading AWS RDS instance storage type and backup retention period cause downtime and data loss?

我有一个 RDS 实例 (db.t2.small),存储类型为预置 IOPS(SSD),备份保留期为 2 天。

我想将存储类型更改为通用 (SSD) 并将备份保留期更改为 30 天。

如果我进行此更改,实例是否会停机? 如果是,停机时间是多长时间? 我会面临任何数据丢失吗?

是的,您将遇到停机时间,因为服务器实例类型正在更改并且需要重新启动 - 不确定停机时间的长短,但估计最多 10-30 分钟。

不会,不会有数据丢失。

关于存储类型的变化,根据 AWS 文档,RDS 试图保持数据量和数据库实例处于活动状态并为请求提供服务,但是性能可能会显着降低。性能下降可能是如此普遍和严重,以至于它还不如离线。

http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.ModifyingExisting

Whenever you change the storage type of a DB instance, the data for that DB instance is migrated to a new volume. The duration of the migration depends on several factors such as database load, storage size, storage type, and amount of IOPS provisioned (if any). Typical migration times are under 24 hours, but can take up to several days in some cases. During the migration, the DB instance is available for use, but might experience performance degradation.

关于备份保留的变化,我尝试在我的 RDS (PostgreSQL) 上将它从 0 更改为 7 并重新启动实例并将其置于修改状态,但它仍然响应查询。我的 RDS 服务器上的负载几乎为 0,所以我不能说在这种状态下它的响应速度如何,但我认为更改备份保留期不会对数据库本身产生太大影响。

我使用 postgres 9.3 对 r3.4xlarge 进行了降级,3TB db 具有 10K 配置的 iops 到通用 SSD。花了 14 个小时才完成,没有对性能产生影响(因为我在 3TB 上获得了 9K iops,而我们没有使用任何接近它的东西)。转换用掉了大约 1000 个读取 iops 和 1000 个写入 iops。