【问题标题】:AWS RDS BackupsAWS RDS 备份
【发布时间】:2017-03-15 11:13:18
【问题描述】:

所以我最近开始将 AWS 和 Elastic Beanstalk 与 RDS 结合使用。

我想知道创建数据库备份的最佳做法是什么?

到目前为止,我的设置是这样的。

  1. 启用自动备份。
  2. bash 脚本每天创建手动快照并删除超过 8 天的手动快照。
  3. bash 脚本,用于创建数据库的 sql 转储并将其上传到 S3。

我创建手动快照的原因是如果我错误地删除了数据库,那么我仍然有快照。

bash 脚本位于使用允许执行这些脚本的 IAM 角色启动的 EC2 实例上。

我在正确的轨道上吗?

非常感谢您的回答,谢谢。

【问题讨论】:

    标签: database amazon-web-services rds


    【解决方案1】:

    一点上下文...

    删除数据库后保存自动备份是一个非常重要的技术问题。我已经看到它让团队中的开发人员措手不及,所以感谢您提出这个问题。

    删除数据库实例后,RDS 会无限期保留此最终数据库快照和所有其他手动数据库快照。但是,当您删除数据库实例时,所有自动备份都将被删除且无法恢复。 source

    我怀疑对于大多数人来说,最终快照就足够了。

    关于手头的问题...

    1. 是的。 110%。绝对的。

    2. 我不会创建手动快照;相反,复制自动化的。

      选项 1:您已经拥有可用的自动快照。为什么不直接复制自动快照(减少不必要的数据库负载;但是,如果您是多可用区,因为您将从副本中进行快照,这无疑不是问题),它创建了手动快照.我会使用 aws sdk 和一个 cron 作业自动执行此操作。

      选项 2:需要手动遵守。只需在终止数据库之前复制您的自动快照(以创建手动快照)。

    3. 如果您有快照,不清楚为什么需要 s3 转储。

      对于架构更改?:如果您正在为架构更改执行此操作,则应该通过迁移来处理这些问题(我们使用knex.js,但请选择您的毒药)。如果那是一座过分的桥梁,请记住有一个仅用于模式转储的选项 (pg_dump --schema-only)。更易于管理。

      获取数据?:您的快照已在 s3 上,请参阅 faq。您始终可以加载快照,如果您愿意,可以通过 sql 转储它。我没有看到故意复制您的数据的明显原因。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      • 2018-05-25
      • 2017-08-15
      相关资源
      最近更新 更多