Это довольно легко через консоль, но мне нужно сделать то же самое с CLI.AWS Aurora: как восстановить моментальный снимок кластера db через aws cli?
Сначала я создал дб снимок:
aws rds create-db-cluster-snapshot \
--db-cluster-snapshot-identifier $SNAPSHOT_ID \
--db-cluster-identifier $CLUSTER \
Кластер содержит только один экземпляр писатель
Я не использовал
create-db-snapshot
метод, поскольку он throwned ошибкуОшибка клиента (InvalidParameterValue) при вызове операции CreateDBSnapshot: указанный экземпляр является членом кластера, и моментальный снимок не может быть создан напрямую. Вместо этого используйте API CreateDBClusterSnapshot.
Он работает:
aws rds create-db-cluster-snapshot \
--db-cluster-snapshot-identifier $SNAPSHOT_ID \
--db-cluster-identifier $CLUSTER \
{
"DBClusterSnapshot": {
"Engine": "aurora",
"SnapshotCreateTime": "2016-12-08T11:48:07.534Z",
....
}
Итак, я хотел восстановить новый кластер Aurora из снимка, а затем я попытался:
aws rds restore-db-instance-from-db-snapshot \
--db-instance-identifier from-snap2 \
--db-snapshot-identifier snap2 \
A client error (DBSnapshotNotFound) occurred when calling the RestoreDBInstanceFromDBSnapshot operation: DBSnapshot not found: snap2
Так что я попытался восстановить с:
aws rds restore-db-cluster-from-snapshot \
--db-cluster-identifier from-snap2 \
--snapshot-identifier snap2 \
--engine aurora \
--vpc-security-group-ids $PREPROD_SG \
--db-subnet-group-name my-db-subnet-group \
Это работает ...
{
"DBCluster": {
...
"EngineVersion": "5.6.10a",
"DBClusterIdentifier": "from-snap2",
...
"DBClusterMembers": [],
...
}
Но почему кластер не содержит экземпляра Aurora?
Где ошибка?