【问题标题】:How do i copy snaphsot of one RDS instance to another?如何将一个 RDS 实例的快照复制到另一个?
【发布时间】:2015-10-14 00:53:10
【问题描述】:

我们正在创建启用了加密选项的新 RDS 实例。创建新的 RDS 实例后,我们需要它与旧实例具有相同的数据。我们有所有 RDS 实例的每日快照。有没有办法将此 RDS 快照复制到新创建的 RDS 实例? 我的一个选择是获取旧 RDS 实例中每个数据库的 mysqldump 并将其添加到新 RDS 实例中的各个数据库中。这很耗时,因为每个数据库快照都达到 40-50 GB。 如果有任何简单的方法可以复制该快照并将其放在新的 RDS 上,请告诉我。

【问题讨论】:

    标签: amazon-rds snapshot


    【解决方案1】:

    Amazon RDS 快照包含 RDS 实例中数据的完整副本。

    快照可用于创建新的 Amazon RDS 实例。然后它将包含快照中数据的完整副本。但是,请注意,此过程创建一个新的 Amazon RDS 实例。它不能用于将数据“插入”到现有的 Amazon RDS 实例中。

    见:Restoring From a DB Snapshot

    【讨论】:

    【解决方案2】:

    可以将 RDS 快照配置到新的 RDS 实例中。假设您的 RDS 配置对于两个实例是相同的,最好是相同的区域,您可以尝试在您的第二个帐户(实例)上启动一个新的 RDS 数据库。

    取决于配置以及您的 RDS 实例是否可公开访问:

    • 在 PC 上安装适当的数据库管理工具,并为这台 PC 提供对两个 RDS 实例的网络访问权限(安全组和数据库用户的读写访问权限)
    • 使用数据库管理工具将数据从一个 DB 复制到另一个 DB

    (或)作为中介通过 EC2 实例复制数据:

    • 启动配置了适当数据库服务器软件的 EC2 实例 将 RDS 数据库数据从您的 RDS 实例复制到您的 EC2 实例
    • 然后在第二个账户中启动您的新 RDS 实例 配置适当的访问权限(安全组和数据库用户的读写权限) 将数据库数据从您的 EC2 实例复制到新创建的 RDS 实例

    如果 RDS 实例和 EC2 实例在同一个可用区,请尝试将 bash 脚本作为用户数据传递给(linux AMI)EC2 实例,数据传输的详细信息可以在脚本中处理。

    参考链接: Copying a DB snapshot, RDS Copy.

    【讨论】:

    • 我认为没有办法直接将现有RDS实例的快照放到新创建的实例中。它在 -docs.aws.amazon.com/AmazonRDS/latest/UserGuide/…“您无法将未加密的备份或快照还原到加密的数据库实例”中被提及为限制之一。
    猜你喜欢
    • 1970-01-01
    • 2023-01-26
    • 2014-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多