我们在 AWS RDS 上托管了一个 PostgreSQL 数据库。使用 cloudformation 创建数据库时,我将其设置为加密,但没有设置加密密钥。因此,它被设置为使用默认加密密钥。
后来我得知,公司有一个标准,即所有 RDS 实例都应该有自己的密钥。
我已经使用 cloudformation 创建了新密钥并将其与 RDS 实例关联,但是当我部署此模板时,它想要删除并重新创建数据库。
我不太了解这一切是如何运作的,而且我正在寻找一种不会导致数据丢失的程序。如果需要的话,一点停机时间不会对我们造成伤害。
答案1
使用 RDS 很容易。您将有一些停机时间,具体取决于数据量。对于小型实例,停机时间为一小时,对于大型实例,停机时间为一天。好处是,创建快照后,您可以独立测试而不会影响您的实例。
一切都在 AWS RDS 控制台中执行。
1)创建您的 RDS 实例的快照。
2)复制快照并选择新的主密钥。
3)从快照恢复实例或创建新实例。
注意:对于修改数据的项目,我倾向于创建一个新的 RDS 实例。验证所有内容,然后关闭旧实例。