下载RDS快照

时间:2013-02-17 00:51:56

标签: mysql amazon-web-services amazon-rds

我最近降级了我的EC2实例。我无法再连接到RDS。我认为可能是内部IP不同,现在登录附加到该特定IP。我无法弄明白。我希望能够从快照中获得备份。有没有办法通过AWS下载它?

7 个答案:

答案 0 :(得分:54)

您无法下载RDS快照。但是,您可以连接到它并导出数据库。除非您错误地设置了安全组(将端口打开到IP而不是其他安全组),否则降级实例不应影响连接。

答案 1 :(得分:15)

已接受的答案不再是最新的。您可以使用AWS控制台来代替命令行工具。

导航到RDS->快照->手动/系统->

选择快照->操作->导出到S3

在大多数生产环境中,经历S3很常见,因为您无法直接访问数据库实例。

{{3}}

答案 2 :(得分:7)

除了datasage回答。

作为生产实例的选项,您可以在RDS中创建只读副本,并从此副本进行转储。您可以通过这种方式避免冻结生产数据库。

我们将此方案用于PostgreSQL + pg_dump。希望它对其他人也有帮助。

答案 3 :(得分:1)

听起来您的RDS处于具有安全组和ACL的专用子网内的VPC中。解决问题的唯一方法是在允许所有连接的默认VPC内拍摄快照并确定新的数据库实例。之后,您可以使用数据库客户端或CLI进行经典备份。

答案 4 :(得分:1)

我使用:

import java.io.Serializable; import org.apache.avro.reflect.Nullable; import org.apache.beam.sdk.coders.AvroCoder; import org.apache.beam.sdk.coders.DefaultCoder; import org.apache.beam.sdk.transforms.Combine.CombineFn; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class AverageSpv extends CombineFn<String, AverageSpv.Accum, String> { private static final Logger LOG = LoggerFactory.getLogger(AverageSpv.class); @DefaultCoder(AvroCoder.class) public static class Accum implements Serializable { @Nullable String id; } @Override public Accum createAccumulator() { return new Accum(); } @Override public Accum addInput(Accum accumulator, String input) { LOG.info("Add input: id {}, input); accumulator.id = input; return accumulator; } @Override public Accum mergeAccumulators(Iterable<Accum> accumulators) { LOG.info("Merging accumulator"); Accum merged = createAccumulator(); for (Accum accumulator : accumulators) { merged.id = accumulator.id; } return merged; } @Override public VehicleSpeedPerSegmentInfo extractOutput(Accum accumulator) { LOG.info("Extracting accumulator"); LOG.info("Extract output: id {}", acummulator.id); return acummulator.id; } }

答案 5 :(得分:0)

如果您不需要下载它,而只想与其他AWS账户ID共享,则另一个选择是share your snapshot

答案 6 :(得分:-1)

我还需要这样做,所以我通过登录我的应用服务器创建了db(MySQL)的转储,该服务器有权访问数据库。然后我使用scp将转储下载到我的本地机器。 我用过:

mysqldump -uroot -p -h<HOST> --single-transaction <DBNAME> > output.sql