如何使用 AWS CLI 获取 RDS 数据库实例的最新快照的名称?
How can I get the name of the most recent snapshot for an RDS DB instance using the AWS CLI?
如何使用 AWS CLI 获取特定数据库实例的最新快照?
我可以轻松地通过 GUI 获取它们,但我想将其自动化。
您可以使用 aws rds describe-db-snapshots
CLI 命令获取数据库快照列表,然后 运行 使用 --query
的本地查询以使用 SnapshotCreateTime
字段。
SnapshotCreateTime -> (timestamp)
Specifies when the snapshot was taken in Coordinated Universal Time (UTC). Changes for the copy when the snapshot is copied.
像这样:
aws rds describe-db-snapshots \
--db-instance-identifier your-id \
--query "sort_by(DBSnapshots, &SnapshotCreateTime)[-1].{id:DBSnapshotIdentifier,time:SnapshotCreateTime}"
请注意,此查询按 SnapshotCreateTime 的升序对快照进行排序,然后只取列表中的最后一个(由 [-1] 指定),这将是最后创建的那个。
[已添加] 如果您要查找 Aurora 数据库集群的快照,则必须使用 describe-db-cluster-snapshots
代替 describe-db-snapshots
,但其他过程类似:使用 DBClusterSnapshots
和 DBClusterSnapshotIdentifier
(代替 DBSnapshots
和 DBSnapshotIdentifier
)。
如何使用 AWS CLI 获取特定数据库实例的最新快照?
我可以轻松地通过 GUI 获取它们,但我想将其自动化。
您可以使用 aws rds describe-db-snapshots
CLI 命令获取数据库快照列表,然后 运行 使用 --query
的本地查询以使用 SnapshotCreateTime
字段。
SnapshotCreateTime -> (timestamp)
Specifies when the snapshot was taken in Coordinated Universal Time (UTC). Changes for the copy when the snapshot is copied.
像这样:
aws rds describe-db-snapshots \
--db-instance-identifier your-id \
--query "sort_by(DBSnapshots, &SnapshotCreateTime)[-1].{id:DBSnapshotIdentifier,time:SnapshotCreateTime}"
请注意,此查询按 SnapshotCreateTime 的升序对快照进行排序,然后只取列表中的最后一个(由 [-1] 指定),这将是最后创建的那个。
[已添加] 如果您要查找 Aurora 数据库集群的快照,则必须使用 describe-db-cluster-snapshots
代替 describe-db-snapshots
,但其他过程类似:使用 DBClusterSnapshots
和 DBClusterSnapshotIdentifier
(代替 DBSnapshots
和 DBSnapshotIdentifier
)。