繁体   English   中英

归档 AWS RDS mysql 数据库

[英]Archiving AWS RDS mysql Database

我正在寻找从 AWS RDS MySQL 数据库的特定表中存档我的旧数据的选项。 我遇到了 AWS S3、AWS Glacier 并使用一些管道或存储桶将数据复制到其中之一,但据我所知,他们将数据复制到保管库或备份数据,但不移动它们。

是否有通过从 RDS 移动到 S3 或 Glacier 或 Deep Archive 来存档数据的正确选项? 即,在创建存档后从 AWS RDS 中的表中删除。 符合我的要求的存档过程的最佳选择是什么,它会影响已经存在的副本吗?

“归档”数据时最大的考虑是确保它是一种有用的格式,如果你想要它再次回来。

Amazon RDS 最近添加了将 RDS 快照数据导出到 Amazon S3 的功能

因此,流程可能是:

  • 创建Amazon RDS 数据库的快照
  • 将快照作为 Parquet 文件导出到 Amazon S3(您可以选择导出特定的数据库、架构或表集)
  • 根据需要在导出的文件上设置存储类(例如 Glacier Deep Archive)
  • 从源数据库中删除数据(确保在删除数据之前保留快照或测试导出!)

当您稍后希望访问数据时:

  • 必要时恢复数据(基于存储类)
  • 使用 Amazon Athena 直接从 Amazon S3查询数据

最近我确实使用 AWS lambda 构建了一个类似的管道,该管道每月按 cron 计划(Cloudwatch 事件)运行,以手动拍摄 RDS 快照,将其导出到 S3,并删除超过 n 天的记录

我添加了我使用的 util 类的要点,如果它可以帮助任何人JS Util 类创建并将 Db 快照导出到 S3,则将其添加到此处

PS:我只是想将其添加为已批准答案的评论,但没有足够的声誉。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM