如何通过AWS CLI获取手动创建的RDS数据库实例所有快照名称
解决AWS CLI获取RDS手动快照名称的错误
问题原因
- API命令误用:如果你的RDS是单实例(非Aurora等集群架构),用
describe-db-cluster-snapshots会返回空结果,导致sort_by因接收到null而非数组报错。 - Query语法错误:
sort_by的第一个参数必须是数组类型,你直接传入DBSnapshotIdentifier(单个字段值)不符合语法要求。
正确命令
根据你的RDS类型选择对应命令:
单实例RDS手动快照
aws rds describe-db-snapshots \ --snapshot-type manual \ --query "sort_by(DBSnapshots, &SnapshotCreateTime)[*].DBSnapshotIdentifier"
RDS集群(如Aurora)手动快照
aws rds describe-db-cluster-snapshots \ --snapshot-type manual \ --query "sort_by(DBClusterSnapshots, &SnapshotCreateTime)[*].DBClusterSnapshotIdentifier"
命令说明
--snapshot-type manual:仅筛选手动创建的快照,排除自动生成的快照。sort_by(数组名, &排序字段):对返回的快照数组按创建时间排序,确保结果按时间顺序展示。[*].快照名称字段:提取排序后所有快照的名称,直接输出列表。
内容的提问来源于stack exchange,提问作者satya priya
相关产品推荐
相关产品推荐

